我最近说服我的管理层,我们过时的 Rails 版本 (1.2.4) 正在减慢我们的速度,足以保证升级。我们采取的方法是使用当前技术启动一个新项目,而不是进行痛苦的升级。我们对项目的要求已经改变,这会容易得多。
最大的问题实际上是我对 Rails 的了解已经过时了。我在工作中只处理过 Rails 1.2.4,而世界其他地方很久以前就已经在移动了。由于埋头于工作而不是跟上当前的 Rails 时尚,我错过了哪些主题?
我对随意浏览博客犹豫不决,因为我不确定 Rails 的中间版本之间有多少变化。学习对 Rails 3 不再有用的 Rails 2.1-2.3 特定内容是没有用的。
最佳答案
应用程序开发人员最显着的变化:
- New ActiveRecord Query API
- The Lowdown on Routes in Rails 3
- Bundler用于管理 gem 依赖
- Action Mailer in Rails 3
- Unobtrusive Javascript
- XSS Protection in Rails 3
- 来自 Rails Dispatch 的 Rails 3 教程
如果您来自 Rails 1.X,则需要注意的其他约定和 API 在 Rails 2.X 中引入并存在于 Rails 3 中。
- RESTful Controller
- 范围(正式命名的范围)
- 查询缓存
- 嵌套属性
如何强调 RESTful Controller 和作用域如何使您能够编写具有更高可重用性的更简洁的 Rails 应用程序,再怎么强调也不为过。关于这些主题的大量信息。
进一步阅读 Rails 3 的开发:
- http://www.engineyard.com/blog/2009/rails-and-merb-merge-the-anniversary-part-1-of-6/
- http://www.engineyard.com/blog/2009/rails-and-merb-merge-performance-part-2-of-6/
- http://www.engineyard.com/blog/2010/rails-and-merb-merge-plugin-api-part-3-of-6/
- http://www.engineyard.com/blog/2010/rails-and-merb-merge-rails-core-part-4-of-6/
- http://www.engineyard.com/blog/2010/rails-and-merb-merge-orm-agnosticism-part-5-of-6/
- http://www.engineyard.com/blog/2010/rails-and-merb-merge-rack-part-6-of-6/
关于ruby-on-rails - 学习什么 : Rails 1. 2.4 -> Rails 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2642662/