@ZEAL Blog·厉
We stand alone,
TOGETHER.

你准备让Rails成为主流了吗?

Posted by zeal on 2005-09-12 11:40 , 1369 characters |  + 0 - 0   English
转载请保留本行原始出处声明信息 : http://www.zeali.net/entry/169 MaDe1nZEAL
PragDave对踌躇于RoR和传统Java之间的开发者们提出了一些不错的建议,也许不够完美,但绝对的从实际出发。

对于使用Java的人来说,可能已经习惯了Java的一切。要完成什么功能都可以从大量的公用类库中找到答案。但有些时候,Java尤其是J2EE庞大的身躯在面对应用开发的时候显得笨重有余,灵活不足。RoR的出现恰恰提供了这方面的强势。但要真正让RoR应用于自己的产品,还是需要首先对它有足够的了解,知道它能做什么,不能做什么。这中间你可能还会遇到根本找不到你所需要的开发工具和类库的窘境。

那么,什么时候你不应该使用RoR?

  • 当你需要处理跨数据库事务的时候。 RoR目前为止还不支持分段事务提交。
  • 当你现有的数据库结构设计的太差的时候。当数据结构设计的很合理的时候RoR的ActiveRecord可以完全击败Hibernate。但如果你的数据结构已经是一团糟的时候,最好还是依赖Hibernate来搞定它。
  • 当你准备往现有的大型应用里面添加一些小功能的时候。这一点可能是比较有争议性的。事实上有一种观点认为恰恰是这种时候你需要使用Rails。这种时候你可以通过web services的方式来开发新的Rails功能,然后衔接到现有的产品中去。但问题在于,大多数的大型应用架构都不像想象中的那么合理。要想把其中的一部分功能分解出去通过web services来实现的话,你得先重新分析拆解以保证不会影响其他现有功能。这样做的结果只能是浪费大量的时间和人力。
  • 当程序员不希望使用RoR的时候。当你要推行新的技术的时候,最好的去引导而不是强制别人。要知道开发是团队工作,如果其他的程序员一点都不认同Rails的话,你一个人起劲是没什么好结果的。

接下来,如果你确定要开始采用RoR这种新技术的话,最好循序渐进。先从新的小项目开始。

  • 先在你已经在做的Java应用开发里面引入一些遵从RoR规范的东西。 比如说当你创建数据库表的时候,可以开始使用RoR规范来命名。这样做既不会对你现在的实际开发造成任何影响,也可以使自己以后转化到RoR开发的时候不会碰到更多兼容方面的问题。同时就算整个应用的框架是J2EE的,你也可以对于一部分内部的辅助功能采用Rails来开发。只要数据结构是Rails友好的,就不会有什么问题。
  • 尝试并行开发。 虽然关于Rails到底能对产品开发带来多大的效率提高仍然有各种争论,但已经有很多人认同5-15倍的观点。既然Rails可以只用10-20%的时间开发出同样规模的应用,那么为什么不尝试一下对于某个实际的项目采用并行开发的模式?如果同样的项目用J2EE开发花了5个月的时间,而你再花了一个月就用Rails开发出了同样的一套系统,那么再下一次的项目选型的时候,你就没道理不仔细考虑是否可以完全用Rails来实现了。
  • 要清楚的知道自己在做什么。 做任何事情第一印象都是最重要的。要想Rails能够真正成为你的主打开发利器,那么第一个实际的Rails项目开发的成败关系到一切。在做决定之前,先考虑清楚Rails是否能满足实际开发、发布以及后续维护的需要。
Last Modified on 2007-05-25 22:39
没有评论.
Since 2005.04.27  梦想 就像鸡蛋 要么孵化 要么臭掉RSS Feed (Entries) | Back To Home | @ZEAL | 沪ICP备05024379号