- 浏览: 2064397 次
- 性别:
- 来自: NYC
-
文章分类
- 全部博客 (628)
- Linux (53)
- RubyOnRails (294)
- HTML (8)
- 手册指南 (5)
- Mysql (14)
- PHP (3)
- Rails 汇总 (13)
- 读书 (22)
- plugin 插件介绍与应用 (12)
- Flex (2)
- Ruby技巧 (7)
- Gem包介绍 (1)
- javascript Jquery ext prototype (21)
- IT生活 (6)
- 小工具 (4)
- PHP 部署 drupal (1)
- javascript Jquery sort plugin 插件 (2)
- iphone siri ios (1)
- Ruby On Rails (106)
- 编程概念 (1)
- Unit Test (4)
- Ruby 1.9 (24)
- rake (1)
- Postgresql (6)
- ruby (5)
- respond_to? (1)
- method_missing (1)
- git (8)
- Rspec (1)
- ios (1)
- jquery (1)
- Sinatra (1)
最新评论
-
dadadada2x:
user模型里加上 protected def email ...
流行的权限管理 gem devise的定制 -
Sev7en_jun:
shrekting 写道var pattern = /^(0| ...
强悍的ip格式 正则表达式验证 -
jiasanshou:
好文章!!!
RPM包rpmbuild SPEC文件深度说明 -
寻得乐中乐:
link_to其实就是个a标签,使用css控制,添加一个参数: ...
Rails在link_to中加参数 -
aiafei0001:
完全看不懂,不知所然.能表达清楚一点?
"$ is not defined" 的问题怎么办
近期涉及到一个类似的项目,需要了解iphone上相关应用支持。所以,单门列这样一个专题,进行相关资料收集和整理。本来如果iphone支持flex问题就解决了。如果,iphone对ruby支持不好,那就要看看object-c的执行效果了。
iphone越来越流行了, 如果你想开发iphone上面的软件,你又不想学习Objective-C, 那么怎么办呢?
也许你可以从这里找到你要的答案。
http://www.digitalsanctum.com/2008/10/04/iphone-development-with-ruby/
你也可以看看这个:
Rhodes是一个开源的解决方案,它使得开发人员能够在移动设备上进行Ruby开发。而且它允许使用类似
Java的特性,一次编写,到处运行。它还支持多种设备,例如iPhone、Windows Mobile和RIM的BlackBerry,
并且在将来还会支持Symbian和Android。
http://www.infoq.com/cn/news/2008/12/rhodes-iphone-winmobile-rim
Rhodes是一个开源的解决方案,它使得开发人员能够在移动设备上进行Ruby开发。而且它允许使用类似Java的特性,一次编写,到处运行。它 还支持多种设备,例如iPhone、Windows Mobile和RIM的BlackBerry,并且在将来还会支持Symbian和Android。
能够将程序部署到iPhone是一件非常有趣的事,它为iPhone开发提供了另一个选择(继Objective-C之后)。而且,Rhodes以及必需的解释器和程序库都是开源的
,由Github托管,还有一个Rhomobile项目的公开BUG追踪系统
。
我们采访了Rhomobile
的Adam Blum
,深入地了解了Rhodes
是如何工作的,以及他们是如何成功使得Ruby程序能够在iPhone上运行。
平台
关于如何使得Ruby程序成功地在iPhone上运行的问题。Adam解释说:
答案就是 [..] 我们将开发者的程序和我们的架构以及一个Ruby解释器绑定在一起。为了顺从于AppStore,开发者们不能随意地在其他地方下载解释过的代码。要么他 们忍气吞声,要么他们就选择一种更简单的方法来解决这个问题,只要他们肯违背这种限制的话,那就是集成一个Ruby解释器,直接下载Ruby代码。
iPhone上的Ruby版本现在是1.9版。而且Rhodes支持其他多种平台,并计划添加更多平台的支持,例如Symbian等等。
BlackBerry 的应用程序都是用Java编写的,所以想让这个平台支持Rhodes和Ruby ,就得多做点儿事。Rhomobile选择了一个雄心勃勃的解决方案,使用XRuby 。XRuby 是一个Java的Ruby版本,它能够将Ruby源代码编译 成Java类文件。XRuby的开发在去年停滞了下来,但是Rhomobile已经选择了XRuby,并且对其进行了改进,现在在Blackberry上使用的是XRuby来运行Rhodes应用程序的。Adam还提道:
我们现在还在搞Android,根据我们在RIM的实现(基于XRuby而不是JRuby)来尝试在Android上运行Ruby代码。
Adam也提到说,需要保持Ruby解释器体积足够小,而这会影响到一些Ruby库的使用:
我们定义了一个子集,这也是为什么我们要自己来做框架的理由。为了让解释器的体积更小,我们可做了不少工作,而且以后会做得更好。
例如eval()
等特性现在也不支持。
因为Rhomobile是与Ruby解释器需要在移动平台上协同工作,我们又和Adam聊了聊他对于这个问题的愿景:
嗯…… 我们当然希望看到Ruby解释器的实现者们把解释器做得更小,而且更关注于当构建了好用的Gems之时,程序库依赖的体积也更小。现在这些事情都是我们在做,不过也还好。
如何工作
Rhomobile 目标是支持多种不同的移动电话平台,所以他们选择了构造Rhodes跨平台应用程序架构 。简而言之:Rhodes应用程序 就是运行 在本地设备上的web应用程序 (例如运行在设备上 的应用程序,其Ruby部分 就 如同HTML GUI一样)。这些程序的GUI用HTML来定义,并且使用浏览器来显示。现代的手机都带有浏览器程序,例如iPhone上的基于Webkit的 Safari。也就是说,开发者可以使用通用的web开发方法来开发应用程序,包括在GUI中使用Javascript。Rhodes同样关心如何使 GUI看起来像独立平台上的原生GUI组件,例如使用属于iPhone GUIs的IUI 。
但Rhodes还有一些新方法 :有一些现代智能手机的高级特性 在Rhodes应用开发中也可以使用,比如说地理定位信息 ;对加速仪 、摄像头 以及本地PIM 的存取下个版本就可以使用。下一个版本预定于1月发布。
使用这些特性,我们可以使用Ruby调用,并且在HTML文件中以HTML标签形式来使用,例如:
<geolocation/>
将会以如下形式展现 :
37.3317° North, 122.0307° West;37.331689;-122.030731
像其他Ruby的Web架构一样,开始编写Rhodes应用程序也很简单。在开始的时候,先使用一个生成器:
rhogen app accountapp
这个命令产生了基本的应用程序骨架,包含了控制器以及其他的应用。更多信息请参见Rhodes示例 。
Rhodes还包括Rhom ,它是一个对象映射器。在Github上同样也有其他的Rhomobile程序库 。例如Rhosync ,它可以将不同的数据源同步到移动电话上。
Rhomobile
还是一个新项目,现在发布的版本号是0.1,但是0.2版将会在这个月末发布,这个版本改进了PIM的存取以及GUI。0.3版预期会在2009年的一月
末发布,将会支持更多的平台以及支持更多设备(例如加速仪),以及为Rhodes开发者提供项目托管。
最后需要说明一件非常重要的事情,Rhodes是在Github上的一个开源项目 。Rhomobile的商用模型基于双许可证 。Rhodes应用程序是开源的,但是如果一个公司希望使用Rhodes,并且不打算对外公开源代码,那么就需要从Rhomobile取得商业许可证。
你还知道其他的跨平台解决方案能够像Rhodes一样提供类似级别的集成化吗?你会使用Rhodes来编写程序吗?
查看英文原文: Rhodes Brings Ruby Apps to iPhone, Windows Mobile, BlackBerry
发表评论
-
Destroying a Postgres DB on Heroku
2013-04-24 10:58 915heroku pg:reset DATABASE -
VIM ctags setup ack
2012-04-17 22:13 3243reference ctags --extra=+f --e ... -
alias_method_chain方法在3.1以后的替代使用方式
2012-02-04 02:14 3271alias_method_chain() 是rails里的一个 ... -
一些快速解决的问题
2012-01-19 12:35 1460问题如下: 引用Could not open library ... -
API service 安全问题
2011-12-04 08:47 1368这是一个长期关注的课题 rest api Service的 ... -
Module方法调用好不好
2011-11-20 01:58 1329以前说,用module给class加singleton方法,和 ... -
一个ajax和rails交互的例子
2011-11-19 01:53 1894首先,这里用了一个,query信息解析的包,如下 https: ... -
Rails 返回hash给javascript
2011-11-19 01:43 2261这是一个特别的,不太正统的需求, 因为,大部分时候,ajax的 ... -
关于Rubymine
2011-11-18 23:21 2248开个帖子收集有关使用上的问题 前一段时间,看到半价就买了。想 ... -
ruby中和javascript中,动态方法的创建
2011-11-18 21:01 1222class Klass def hello(*args) ... -
textmate快捷键 汇总
2011-11-16 07:20 8124TextMate 列编辑模式 按住 Alt 键,用鼠标选择要 ... -
Ruby面试系列六,面试继续面试
2011-11-15 05:55 2010刚才受到打击了,充分报漏了自己基础不扎实,不肯向虎炮等兄弟学习 ... -
说说sharding
2011-11-13 00:53 1464这个东西一面试就有人 ... -
rails面试碎碎念
2011-11-12 23:51 1930面试继续面试 又有问ru ... -
最通常的git push reject 和non-fast forward是因为
2011-11-12 23:29 17190git push To git@github.com:use ... -
Rails 自身的many to many关系 self has_many
2011-11-12 01:43 2710简单点的 #注意外键在person上people: id ... -
Rails 3下的 in place editor edit in place
2011-11-12 01:20 935第一个版本 http://code.google.com/p ... -
Heroku 的诡异问题集合
2011-11-11 07:22 1685开个Post记录,在用heroku过程中的一些诡异问题和要注意 ... -
SCSS 和 SASS 和 HAML 和CoffeeScript
2011-11-07 07:52 12938Asset Pipeline 提供了内建 ... -
Invalid gemspec because of the date format in specification
2011-11-07 02:14 2099又是这个date format的错误。 上次出错忘了,记录下 ...
相关推荐
3. **自动内存管理**:Ruby具有垃圾回收机制,自动管理内存使用。 4. **闭包和块**:Ruby支持闭包和迭代器块,使得循环和迭代操作更加灵活。 5. **元编程**:Ruby支持元编程技术,可以在运行时修改类和模块的定义。 ...
### 前端学 Ruby:熟悉 Ruby 语法 #### Ruby 是什么? Ruby 是一种动态的、面向对象的脚本语言,由日本人松本行弘在 1995 年设计并开发。作为一种解释型语言,Ruby 具有简单易懂、功能强大且灵活的特点。Ruby 在 ...
在Ruby开发中,为了管理不同版本的Ruby环境,我们常常会使用到`rbenv`和`ruby-build`这两个工具。本文将详细介绍如何使用`ruby-build`来编译和安装Ruby。 `rbenv`是一个用于管理全局或用户级别的Ruby版本的工具,它...
【使用 Ruby on Rails 和 Eclipse 开发 iPhone 应用程序教程】是一个面向中级开发者的系列教程,旨在教读者如何利用 Ruby on Rails 框架在服务器端为 Mobile Safari 设计和提供自定义内容,以适应 iPhone 和 iPod ...
本资料主要聚焦于使用 Ruby 进行 Web 应用程序的开发和部署过程,以下是相关知识点的详细说明: 1. **Ruby 基础**: - **变量和数据类型**:Ruby 支持多种变量类型,如局部变量、实例变量、类变量和全局变量。它有...
Ruby Gem环境是Ruby编程语言中的一个关键组成部分,它是一个包管理器,负责安装、管理和使用Ruby库,也就是所谓的Gems。...通过正确配置和使用Gem,你可以轻松地利用Ruby社区丰富的开源资源,提高开发效率。
* Web开发:Ruby on Rails是Ruby最流行的应用之一,它是一个Web开发框架,可用于快速构建Web应用程序。 * 数据分析:Ruby提供了许多库和工具,可用于数据分析和处理。 * 游戏开发:Ruby可用于开发2D和3D游戏。 * ...
Ruby是一种面向对象的、...通过深入学习这些知识点,开发者不仅能理解Ruby的基础,还能熟练运用Ruby进行Web开发(如使用Rails框架)、系统脚本编写、命令行工具开发等。Ruby的世界广阔且富有创造力,等待着你去探索。
Web开发:Ruby on Rails.pdf
本资源是一套关于Ruby on Rails开发的全面教程,旨在帮助学习者从入门到精通掌握Ruby on Rails框架的开发技能。教程内容涵盖了Ruby语言基础、Rails框架搭建、Web应用开发、数据库操作、部署与维护等方面的知识。 ...
- **游戏开发**:使用Ruby进行基本的游戏开发。 ### 学习Ruby的理由 - **简洁易学**:Ruby的语法清晰、表达力强,易于上手。 - **社区活跃**:拥有庞大的开源社区支持,丰富的库和框架可供选择。 - **应用广泛**:...
在阅读提供的rdoc文件时,你可以找到关于Rails框架中各个组件的详细文档,包括类和函数方法的说明,这对于深入理解和使用Ruby on Rails进行开发非常有帮助。通过学习这些文档,开发者能更好地掌握Rails的精髓,提高...
本书教您如何使用Ruby on Rails开发和部署真正的,具有工业实力的Web应用程序,Ruby on Rails是为诸如Twitter,Hulu,GitHub和Yellow Pages等顶级网站提供支持的开源Web框架。
7. **Ruby开发环境**:设置Ruby开发环境,如安装IDE(如RubyMine、VSCode等)或文本编辑器,配置Ruby版本和依赖,以及使用Git进行版本控制。 8. **IRB(交互式Ruby shell)**:学习如何使用IRB进行代码测试和调试,...
Title: Machine Learning with Ruby Abstract: I will discuss ways to make sense out of data. Specifically: * Using Classification, Clustering and Recommendation algorithms * and a demo Requirements ...
**解释学:使用Ruby轻松进行CGI和邮件处理** Ruby是一种强大的、面向对象的脚本语言,因其简洁的语法和丰富的库而受到开发者喜爱。在Web开发领域,Ruby被广泛用于创建动态网页和处理服务器端请求,特别是通过CGI...
这极大地扩展了Ruby的适用范围,使得前端开发者可以利用Ruby的简洁性和强大性进行开发。例如,你可以在浏览器端使用Ruby的元编程特性,动态创建类和方法,实现更灵活的设计。 在“kill-the-alien”项目中,你可以...
p6df-Ruby目录p6df-Ruby徽章概括贡献行为守则变化用法p6df-ruby:p6df-ruby / init.zsh: p6_ruby_prompt_info() p6df :: modules :: ruby :: deps() p6df :: modules :: ruby :: home :: symlink() ...