面向移动的Ruby:MRuby、RubyMotion与Ruboto
来源:互联网 发布:alexnet网络结构图 编辑:程序博客网 时间:2024/05/17 22:33
过去几周有几个新的Ruby实现与方言加入到了Ruby这个大家庭中,他们分别是MRuby、MobiRuby与RubyMotion。我们将在本文中介绍这些Ruby实现所提供的一些功能上的亮点。
首先从MRuby开始,它是由Ruby创建者Matz开发的。在RubyConf 2010上,Matz宣布他正在开发Rite,一个新的轻量级Ruby实现。该项工作的成果就是MRuby,现在已经发布到了GitHub上。MRuby完全兼容于不久前ISO所发布的Ruby语言规范,但它与MRI及Ruby 1.9的着眼点则完全不同,因此MRuby并非Ruby 2.0。MRuby可用于运行Ruby程序,但其设计目的在于集成到其他程序中(比如说,在游戏中作为Lua脚本语言的替代者)并运行在内存受限的小型设备中。MRuby对自带的标准库进行了大幅度的精简并去掉了一些特性;Matz在报告中提到MRuby不再支持线程与多语言化(m17n)。其他特性则可以在编译期进行定制(比如说去掉文件I/O,或是选择字符编码等)。
Matt Aimonetti编写了一份MRuby入门指南,还对MRuby与Lua进行了详尽的比较。构建在MRuby之上的项目已经出现了,这将我们带到了MobiRuby。
MobiRuby“旨在通过Ruby替换掉移动平台上的Objective-C/C/Java,就好像你可以使用Lua或Mono来在这些平台上构建应用一样”。Matt Aimonetti分析了该项目所面临的挑战,比如说两个运行时的性能问题以及与平台原生API的交互和文档等。但遗憾的是,MobiRuby尚未发布,因此现在很难做出比较。
但如果你现在仍然想使用Ruby来开发iOS应用,那么还有其他选择。MacRuby的创建者Laurent Sansonetti刚刚发布了RubyMotion,这是MacRuby的一个带有所有权的分支,你可以通过它使用Ruby来编写iOS应用(InfoQ上有对其的详细介绍)。Rake用于创建、运行和编译应用,整个工作流程都是基于命令行的,但你依然可以使用Apple的Interface Builder与Storyboard。RubyMotion更像是一个Ruby方言而非完全的实现,因此你很难轻松地重用现有的Ruby gems。
Android开发者不必感到失望,Ruboto在过去几个月中保持着稳步前进的步伐。此外还有Mirah,它的语法非常类似于Ruby,并且以Pindah的形式支持Android。最后,基于Ruby的跨平台框架Rhodes的创建者Rhomobile最近被Motorola Solutions收购了(这并非Google打算收购的Motorola的一部分)。
那么,你打算如何开发下一个iOS应用呢?
查看英文原文:Ruby Slims Down for Mobile with MRuby, RubyMotion, Ruboto
- 面向移动的Ruby:MRuby、RubyMotion与Ruboto
- 面向移动的Ruby:MRuby、RubyMotion与Ruboto
- Android上的Ruby模拟器:Ruboto
- RubyMotion之父:Ruby是目前替代Objective-C的最佳iOS开发语言
- RubyMotion之父:Ruby是目前替代Objective-C的最佳iOS开发语言
- RubyMotion
- 面向对象的脚本语言Ruby
- Ruby是面向表达式的
- 【Ruby】Ruby(面向对象程序设计的脚本语言)入门
- 面向iOS的静态编译Ruby
- Ruby与QTP的关系
- Python与Ruby的比较
- python与ruby的问题
- ruby的include与extend
- ruby 的module 与类
- ruby 与 mysql的链接
- 移动互联网的垂直化与面向组织的社交关系
- cocos2d-x mruby mruby-java单向桥
- 正则表达式
- 在iPhone上使用 OpenCV
- 静态链表求集合(A-B)∪(B-A)
- getHibernateTemplate用法
- android通知的使用
- 面向移动的Ruby:MRuby、RubyMotion与Ruboto
- 第一个Windows Phone程序
- 学习android需要的基础 (转)
- Qt与Flash互操作
- Qt 常用类 (6) —— QFont
- partitionNew//QuickSort3
- 浅论ViewController的加载
- ubunut远程桌面与共享samba配置
- oracle sql 查询结果 翻转