Ruby 1.9.1 即将到来:是时候从 1.8.x 进行迁移了?

  • Werner Schuster
  • 李明(nasi)

2009 年 1 月 27 日

话题:Ruby语言 & 开发架构

Ruby 1.9.0发布的一年之后,还没见到太多人使用。其中的一些原因包括和流行的程序库及框架的不兼容,以及一些行为的变化等等。 David A. Black 最近发表了一篇博文,介绍了 1.9.x 的变化之中开发者们所要关注的部分,以及某些精巧的、可以破坏软件正常运行的方法(InfoQ报道过很多其他的 Ruby 1.9 变化)。

现在,Ruby 1.9.1作为第一个稳定发布版,即将正式亮相。Ruby 1.9.1 RC1于几周之前推出,RC2 也马上就要发布。就目前的计划,最终的 Ruby 1.9.1 将于一月末正式发布。

稳定的 1.9.1 给了我们一个理由来近距离观察 1.9.x 的运行情况,并期待着速度的提升。一些诸如纤程等特性可以提升可伸缩性(例如用于数据库访问或者 I/O 的 NeverBlock)或者可以用来做一些变通(例如NeverBlock HTTP 程序库)。

Ruby 1.9.x 这个版本还能够为项目增添新的特性或者增加 Ruby 的用途。最近报道的Rhodes 框架Rhodes 框架的 0.2 版本目前已经发布)就利用到 Ruby 1.9.x 版本中对于一些移动平台的支持来开发无线应用。

另一个实例就是MacRuby, 它也将会发布新版本。MacRuby 基于 Ruby 1.9.x,关注与 Objective-C 的紧密集成,比如诸如字符串这样的对象实际上就是 Objective-C 的字符串对象。这种紧密集成使的无损调用 Objective-C 的 API 成为可能,而且还可以使用 Objective-C 的垃圾回收器(Objective-C 的 GC(Autozone) 最近已经开源)。

JRuby 的目标就是支持 1.9.x,完整的解析和部分程序库的支持已经实现在 1.1.6 之中,其他的实现(MacRuby 除外)对于 1.9.x 的支持则还相对滞后。

是什么使你依然使用 Rub 1.8.x?哪些 Ruby 1.9.x 的特性(性能、纤程、线程上的变化和编码方面的修改等等)会促使你进行迁移呢?

查看英文原文:Ruby 1.9.1 Is Close - Time To Switch From 1.8.x?

Ruby语言 & 开发架构