Ruby on Rails 团队最近发布了Rails 4.0 。经过一年半的开发,Rails 4 带来了一些有趣的新特性,比如Turbolinks、改进的缓存以及默认的线程安全性。很多新特性已经在37 Signals 的 Basecamp Next 项目中有所应用。
Turbolinks 会将 Rails 应用变换为单页 JavaScript 应用,这样就不再需要加载新页面了,而只需要用来自服务器的新内容替换当前页面:
这与 pjax 非常类似,不过在使用 pjax 时,需要考虑替换当前页面上的哪些内容,还要对服务器端的响应加以裁剪,以适应当前页面,而在使用 Turbolinks 时,我们会替换全部内容。这意味着我们能获得 pjax 的大部分速度(无需重新编译 JavaScript 或 CSS),同时不需要去裁剪服务器端的响应。
Rails 4 还支持基于键值的缓存过期( key-based cache expiration ),该特性可以将缓存失效自动化,进而可以更容易地实现复杂的缓存结构。
该版本不再支持 Ruby 1.8,建议用户升级到 Ruby 2。它仍然支持 Ruby 1.9,但从 Rails 5 开始要求至少使用 Ruby 2。该版本照例提供了从 Rails 3.2 迁移到 Rails 4 的升级指南。
一些流行的Rails 书籍也进行了相应更新,比如Sam Ruby 的 Agile Web Development with Rails 4 ,前 InfoQ 编辑 Obie Fernandez 的 The Rails 4 Way 。
关于改进的详细信息,请参考更新日志。您是否已经将应用升级到了Rails 4?我们期待您分享自己的经验!
评论