RubyMotion iOS开发入门

什么是RubyMotion?

RubyMotion是一个工具链,可让您使用类似于Ruby的语法编写iOS,Android,OSX,Apple Watch和AppleTV的真正本机应用程序。 它不是编译器(将您的代码转换为Objective-C)。 应用程序的静态编译方式与Objective-C或Swift编译为本地代码的方式相同。 RubyMotion本质上是Ruby的新实现,旨在用于构建移动应用程序。

为什么要使用RubyMotion?

使用RubyMotion的主要好处之一是,您无需学习新语言即可开始构建移动应用程序。 您将使用已经熟悉的Ruby语言。 如果您还不熟悉Ruby,那么您会发现Ruby比Objective-C,Swift或Java更容易读写。 实际上,您将最终了解一些有关Objective-C的知识,以便翻译一些示例或文档。

第二个好处是能够构建跨平台应用程序。 通过消除语言差异,RubyMotion可以允许您在同一代码库中编写同时支持iOS和Android的单个应用程序。 实际上,在单个代码库中构建跨平台应用程序依赖于使用某种框架来抽象特定于平台的用户界面之间的差异。 幸运的是,已经有一些伟大的框架在这​​一领域取得了进展。 无论如何,由于通用语言,仍然有机会重用代码。

安装RubyMotion

应当注意,RubyMotion仅在Mac上运行。 这是因为RubyMotion仍需要访问Apple库和构建工具才能编译您的应用程序并运行iOS模拟器。 您还需要确保已安装Xcode。 安装Xcode后,打开Xcode>首选项,单击“下载”选项卡,然后安装iOS SDK 9.2。

要开始使用RubyMotion,您首先需要注册许可证并下载安装程序。 访问RubyMotion下载页面,然后选择以下计划:

  • 免费 (“入门”)—非常适合尝试RubyMotion。 您甚至可以将应用程序发布到App Store,但是您的启动图像将显示一条消息,说明它是“由RubyMotion制成”。 另请注意,免费计划仅支持iOS和Android的最新版本。
  • 独立 ($ 199 /年)—如果您打算进行任何类型的专业开发,您可能会想要这个。 支持仅限于社区论坛(以及我们的社区Slack频道)。
  • 专业 ($ 499 /年)—如果您需要优先支持,这是您的计划。

注册计划后,您将收到一封电子邮件,其中包含许可证密钥和下载安装程序的链接。

生成您的第一个应用

现在您已经安装了RubyMotion,让我们生成您的第一个应用程序。 打开您的终端机应用程序。 请注意,本教程是使用RubyMotion 4.8编写的。

如果您没有看到模拟器弹出窗口,那么该是找出问题原因的时候了。 我可能忘了解释一步。 您可以在以下几个地方寻求帮助:

  • 在RubyMotion社区论坛中搜索答案。
  • 在我们的RubyMotion Slack频道中寻求帮助。
  • 在下面的评论中发布您的问题。

假设您已经做到了这一点,那么您已经解决了开发RubyMotion应用程序所需的所有系统配置和依赖项。

接下来,让我们快速看一下app_delegate.rb文件。 这是您的iOS应用程序的入口。

在生成的示例应用程序委托中,您可以看到以下内容:

  • 创建一个视图控制器。
  • 创建一个以视图控制器为根的导航控制器。
  • 创建一个以nav控制器为根的窗口。

RubyMotion使此代码比与Objective-C等效的代码易于阅读。 但是,完成很少的工作仍然需要很多样板代码,并且感觉不像您以前编写的那种Ruby代码。 幸运的是,有一些可用的框架可以大大简化许多iOS样板代码。

在下一个教程中,我们将向您介绍一个称为RedPotion的优秀RubyMotion框架,该框架将显着改善您的RubyMotion iOS开发体验。

RedPotion入门可加快iOS开发