Rails 开发考虑了 v3 merb 合并
我正处于设计新 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,并在此期间继续修复 bug 并解决 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 发布为止,但我们将使用这些(重要的)应用程序来确保每个人都能获得流畅的体验。 不会有巨大的跳跃,您也不需要从头开始重写您的应用程序。
I'm in the preliminary stages of designing a new web application, and have yet to begin any sort of implementation. The application models a fairly complex domain, and I'd feel more comfortable using tools such as the ruby DataMapper ORM (having using NHibernate in the .net world) than Rails Active Record. I also prefer jquery over prototype. All of these considerations of course point to using Merb, yet I'm aware that Merb is being merged into Rails for version 3 and will no longer exist as a distinct framework.
Is there any sense in starting work on the implementation of the application now given the fairly profound changes coming to rails? I'd really like to know if it would be worth starting development in Merb now and then porting it to Rails, but I've yet to find anything suggesting how difficult this may be. Another approach would be to start work on the domain now in Rails, and only give consideration to the ORM and frontend once v3 is released.
In essence, I'd like to know how portable a Merb app is going to be to Rails 3, but am aware that it may be too early for anyone other than the core developers to know this.
Any thoughts would be greatly appreciated. Thanks :)
-------------- Edit ---------------
Yehuda Katz, lead developer of the Merb project has this to say on his blog:
The plan is to start working on Rails immediately, and to continue fixing bugs and resolving other major issues in Merb in the interim. We will also release versions of Merb specifically designed to help ease the transition to Rails 3.
In particular, we will do Merb releases with deprecation notices and other transitional mechanisms to assist developers in tracking down the changes that will come between Merb 1.x and Rails 3. Expect a number of interim releases that get incrementally closer to Rails 3, and expect parts of Merb (most notably the helpers) to be ported to run on Rails 3 in order to further reduce friction.
To be perfectly clear: we are not abandoning the Merb project. There are many production applications running on Merb that are relying on both timely bug fixes and a clear path to the future. If you’re using Merb today, continue using Merb. If you’re considering using Merb for a project because it works better for your needs, use Merb. You will not be left in the cold and we’re going to do everything to make sure that your applications don’t get stuck in the past.
If you’ve already learned Merb, we will be working hard to make sure that you can parlay that knowledge into Rails 3. At Engine Yard, we fully intend to continue using Merb for our internal apps until Rails 3 is out, but we will be using those (non-trivial) applications to be sure the experience is smooth for everyone. There will be no huge jumps and you will not need to rewrite your application from scratch.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
实际上,现在并不是在框架上启动复杂应用程序的好时机。 似乎总会有重大升级即将到来,或者其他一些竞争框架可能是更好的选择。 如果您使用 Merb 取得了更大的成功,请立即坚持下去,毫无畏惧地开发您的项目! Rails 和 Merb 社区都将不得不应对随着 Rails 3 的发布而进行的项目合并,但这需要一段时间。
然而,项目合并并不意味着 Merb 将消失。 Yehuda Katz 将不再担任首席开发人员,但会有人接管该项目。 只要您遵循官方 Merb 开发人员存储库,您至少可以期待几年的安全补丁和错误修复。 可能在 Rails 3 发布后,您会发现有关将 Rails 2.x/Merb 1.x 应用程序升级到 Rails 3 的精彩演练。
It's never a good time to start a complex application on a framework, really. It seems like there's always a major upgrade coming up or some other competing framework that may be a better bet. If you're having more success with Merb, stick with that right now and develop your project without fear! Both the Rails and Merb communities are going to have to cope with the merging of the projects with the release of Rails 3, but that's going to be awhile.
The project merge doesn't mean that Merb will be going away, however. Yehuda Katz will stop being the lead developer, but someone will take over the project. At the minimum, you can expect security patches and bug fixes for a few years, as long as you follow the official Merb developers' repository. Likely, after the Rails 3 release, you'll find great walk-throughs on upgrading your Rails 2.x/Merb 1.x application to Rails 3.