写点什么

面向移动的 Ruby:MRuby、RubyMotion 与 Ruboto

  • 2012-05-12
  • 本文字数:1002 字

    阅读完需:约 3 分钟

过去几周有几个新的 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

2012-05-12 03:345316
用户头像

发布了 88 篇内容, 共 271.1 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

防御性编程:让系统坚不可摧

京东科技开发者

陶建辉被授予 2024 年“中国计算机学会(CCF)杰出工程师奖”,TDengine 技术创新力再获肯定

TDengine

数据库 tdengine 时序数据库

基于 LangChain 的自动化测试用例的生成与执行

霍格沃兹测试开发学社

AI Market创新升级:独立运营与全球首创交易模式同步亮相

科技热闻

人人都能手写的chrome插件,帮我省了1000多块钱

京东科技开发者

如何让Android的前端页面像iOS一样“优雅”?

阿里技术

ios 前端 异形屏 前端适配

技术干货|热门仿真平台HyperMesh CFD功能详解:几何和网格(Part 1)

Altair RapidMiner

人工智能 智能制造 altair Hypermesh 仿真设计

ETLCloud携手ClickHouse:高效的数据查询效率

谷云科技RestCloud

数据库 数据处理 ETL 数据集成 Click house

仅需6步,实现虚拟物体在现实世界的精准放置

不在线第一只蜗牛

人工智能 HarmonyOS

打造未来社交:区块链社交DAO的颠覆性开发之路

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 NFT开发 代币开发

Flink CDC:新一代实时数据集成框架

Apache Flink

大数据 flink 数据集成 Flink CDC 实时处理

《阿凡达》导演卡梅隆加入 Stability AI 董事会;Molmo 横空出世,开源多模态模型王座易位丨 RTE 开发者日报

声网

想要激活孩子潜在力量,家长必做的一件事

心大陆多智能体

智能体 AI大模型 心理健康 数字心理

Kubernetes存储新动力:CSD3000与Portworx的协同效应

ScaleFlux

Kubernetes Serverless 云原生容器 应用容器化

Spark SQL分析层优化

数新网络官方账号

构建未来电商体验:深度解析京东商品详情API的核心价值与应用

代码忍者

API 测试 pinduoduo API

Mac苹果电脑视频下载软件推荐:Downie 4 for Mac 激活版

你的猪会飞吗

Downie 4 下载 Downie 4 Mac版 Downie 4 for mac

数据资产管理实施路径盘点,一文读懂如何建设企业数据资产管理体系

袋鼠云数栈

基于 LangChain 的自动化测试用例的生成与执行

测试人

软件测试

大模型还能产生幻觉?一文讲清楚原理和解决方法

敏捷开发

AI AIGC GPT LLM 大模型幻觉

写不好代码注释?这份注释指南一定要收好!

敏捷开发

程序员 敏捷开发 软件开发 代码注释 代码规范

财务规划技术与思维的碰撞

智达方通

企业管理 全面预算管理 财务规划

给Java同仁单点的AI"开胃菜"--搭建一个自己的本地问答系统

京东科技开发者

百度ARM云全栈自研方案全新升级,普惠智算助力行业数智化转型

科技大数据

百度输入法AI请求次数累计超4亿,「超会写」全新升级

极客天地

等等,谁说我们小公司不能用IPD?

敏捷开发

项目管理 敏捷开发 IPD 集成产品开发体系

通信系统仿真:飞行器集群协同控制纽带

DevOps和数字孪生

【YashanDB知识库】YashanDB-OCI-快速上手

YashanDB

yashandb 崖山数据库 yashandb知识库

云桌面 + 数字人:开启直播新纪元

Finovy Cloud

面向移动的Ruby:MRuby、RubyMotion与Ruboto_Ruby_Mirko Stocker_InfoQ精选文章