我正处于设计新 Web 应用程序的初步阶段,还没有开始任何形式的实施。该应用程序对一个相当复杂的域进行建模,使用 ruby DataMapper ORM(在 .net 世界中使用 NHibernate)等工具比使用 Rails Active Record 更舒服。我也更喜欢 jquery 而不是原型。当然,所有这些考虑都指向使用 Merb,但我知道 Merb 正在合并到 Rails 版本 3 中,并且将不再作为一个独特的框架存在。
鉴于 Rails 发生了相当深刻的变化,现在开始实施应用程序有什么意义吗?我真的很想知道是否值得现在开始在 Merb 中进行开发,然后将其移植到 Rails,但我还没有找到任何暗示这可能有多困难的东西。另一种方法是现在在 Rails 中开始在域上工作,并且仅在 v3 发布后才考虑 ORM 和前端。
本质上,我想知道一个 Merb 应用程序对于 Rails 3 的可移植性,但我知道除了核心开发人员之外的任何人都知道这一点可能还为时过早。
任何想法将不胜感激。谢谢 :)
- - - - - - - 编辑 - - - - - - - -
Merb 项目的首席开发人员 Yehuda Katz 在他的博客上这样说:
计划是立即开始在 Rails 上工作,并在此期间继续修复错误并解决 Merb 中的其他主要问题。我们还将发布专门用于帮助轻松过渡到 Rails 3 的 Merb 版本。
特别是,我们将发布带有弃用通知和其他过渡机制的 Merb 版本,以帮助开发人员追踪将在 Merb 1.x 和 Rails 3 之间发生的变化。预计会有一些临时版本越来越接近 Rails 3,并且期望将部分 Merb(最显着的助手)移植到 Rails 3 上运行,以进一步减少摩擦。
明确地说:我们并没有放弃 Merb 项目。有许多在 Merb 上运行的生产应用程序都依赖于及时的错误修复和通向未来的清晰道路。如果您今天使用 Merb,请继续使用 Merb。如果您正在考虑将 Merb 用于项目,因为它可以更好地满足您的需求,请使用 Merb。您不会被冷落,我们将尽一切努力确保您的应用程序不会被困在过去。
如果您已经学习过 Merb,我们将努力确保您可以将这些知识运用到 Rails 3 中。在 Engine Yard,我们完全打算继续将 Merb 用于我们的内部应用程序,直到 Rails 3 推出,但我们会使用那些(非平凡的)应用程序来确保每个人的体验都是流畅的。不会有巨大的跳跃,您也不需要从头开始重写您的应用程序。