曾有开发者预言,Rails不可能成为企业应用的主流。但随着Rails在Web开发中的逐渐普及与流行,越来越多的企业开始在Rails上面投入更多关注,同时面向企业复杂业务逻辑开发的Rails应用也逐步出现。
诚然,在Web 2.0网站开发中无往不利的Ruby on Rails(简称ROR)完全适应企业应用,但是仍然还需要走很长的路。不可否认,尽管Rails在企业开发中依然是优势与弊端并存,却已在部分成功案例中显露出锋芒。
Rails与传统企业开发语言
随着科学技术的不断更新,企业IT系统也一直向着越来越复杂的趋势演进。复杂的J2EE开发模式为复杂的企业应用提供了各种各样的解决方式,但由于较高的学习成本和实现方式的复杂性,面向企业的技术无疑已成为开发者身上沉重的枷锁,同时也将一些没有很好规划的企业应用开发项目拖入泥潭。
在Web 2.0互联网开发中硕果累累的Ruby on Rails无疑让面向企业应用的开发者们看到了一线曙光。毕竟,Rails的介入简化了企业应用日益复杂化的趋势,项目复杂度的简化同时也意味着开发效率和个体生产力的提高。
但是,Ruby on Rails框架的初衷并非面向企业复杂的业务逻辑而设计。Rails创始人David Heinemeier Hansson曾在RailsCon大会演讲中提到,Rails并不是为业务逻辑超级复杂的企业级应用所服务的。但在目前中小型企业开发的实际应用中,Rails已经凭借快速有效的开发模式占据了一席之地。
然而,在大型复杂企业应用方面,最适合的必然还是工业化语言。工业语言需要在语法上简单清晰而且足够强壮,不能过于灵活,实现同样的目标往往只有一种最优解而非诸多的花招。
所以工业化语言在语法上需要遵循严格标准和规范。同时,由于团队协作开发—甚至是大规模项目的团队异地协作的需要,工业语言需要保证团队中程序员的代码风格高度一致,在大规模团队协作中将代码块之间的依赖性降到最低。
不可否认,Java是非常适合复杂业务逻辑开发的工业级语言。使用Java语言,开发者们的编程风格非常容易进行统一,在面向对象编程基础和设计模式的指导之下,使用Java语言编写的代码具有相似的风格和极高的相似度。
Java编程语言的语法简单清晰且严密,规范化带来最大益处就是易于团队协作。优秀的Java开源框架源代码都比较容易阅读,并且Java代码的二义性小,使用Java实现业务逻辑,往往只有一种最优的方式。这些特性使得Java语言适应企业开发严格与严密的要求。
但是为了适应复杂工业的需要,Java整个开发体系相当复杂,对于使用者来说需要付出高昂的学习成本。而Ruby on Rails为代表的敏捷Web开发技术大大降低了开发者的学习成本。