使用Rails开始一个新的Web应用程序3.我仍然相对较新的Web开发,并且非常喜欢在Ruby 1.8.7和Rails 2.3.5中工作时可用的所有Internet资源。在我的新项目中使用Ruby 1.9.2的反对的任何建议?
答案 0 :(得分:6)
我已经成功地将所有我的Rails项目(除了一个,但我正在研究它)从Ruby 1.8.7 / Rails 2.3.5转换为Rails 3.0.0和Ruby 1.8.7 / 1.9.2 RC2两种环境都很稳定。
幸运的是,自我发布this question以来,事情发生了变化。
<强>滑轨强>
除非您确实有某些事情阻止您这样做,否则我强烈建议您从Rails 3开始。 将应用程序从Rails 2升级到Rails 3所需的工作应该阻止您从Rails 2开始。
谈到插件和Gems,许多开发人员开始将他们的库转换为Rails 3.目前,它具有非常高的兼容性。 此外,由于新的Rails插件API,Rails 3专注插件往往对Rails 2.3更强大。他们可以加载任务,不再滥用猴子补丁或依赖内部黑客攻击。
此外,Rails 3即将来临。除非您的项目将在1周内部署,否则在部署代码之前可能会提供稳定版本。 我不会这样做,考虑到我目前正在生产环境中管理几个Rails 3项目并且它们非常稳定(Rails 3 RC1,Beta 4在缓存环境中有一个非常奇怪的错误)。
Ruby 1.9.2
Ruby 1.9.2比Ruby 1.8.7更强大。如果这是一个全新的项目,我建议你使用1.9分支。
通常,在Ruby 1.9中启动新项目比转换现有项目更容易。
Ruby 1.9.2比REE更快,甚至更快。大多数常见的Ruby 1.8.7 Gems都可以使用Ruby 1.9,除了一些,比如RCov。 同样,你很难需要一个不能与Ruby 1.9.2一起使用的库。
如果它发生了,很可能这是一个过时的库,并且Ruby生态系统中可能有更好的替代品。
如果您找不到替代方案,请记住,由于Bundler,Rails 3提供了一种使用自定义库的绝佳方法。 你可以分叉项目并让Bundler使用你的fork。您甚至可以将库集成到您的存储库中,并要求Bundler从路径加载库。
<强>结论强>
根据我的个人经验,我对Ruby 1.9.2和Rails 3非常满意。 这是我最喜欢的环境和新项目的默认环境。
如果你不能使用Ruby 1.9.2,请尝试使用Ruby 1.8.7。 另一方面,我强烈建议您从Rails 3开始。
答案 1 :(得分:2)
最终取决于项目是什么。如果它是一个个人项目,并且您正在使用它作为学习Ruby / Rails的一种手段,那么我认为值得学习并使用最新的工具。如果这是客户端工作,或者您的主要目标只是完成该项目的项目,2.3.5 / 1.8.7可能是最佳选择,因为您提到的资源,以及许多支持库/宝石将工作。你必须在某些时候学习Rails 3 / Ruby 1.9.x,因为这绝对是社区的发展方向。
我会做一些研究,看看你的项目需要什么宝石,并确保如果你选择Rails 3 / 1.9.2路线,一切都得到支持。此外,加入irc并询问其他人对任何宝石的体验。
我可以告诉你,我有一个小型的Rails 3 / 1.9.2应用程序,它在生产中运行得很好,虽然它非常小并且是个人项目。
答案 2 :(得分:1)
您可能希望使用RVM
来试用Ruby 1.9.2我一直在使用它来开发一些Rails3应用程序,同时维护我们当前的生产站点(一直到Rails 2.2 / Ruby 1.8.5)。 只有抱怨必须记住启动RVM ^^