适于敏捷开发的Web框架

以前常关注Java开源Web框架的应用研究,还专门写过一篇论文讲基于Hibernate的实体关系映射。最近一直在做Java富客户端应用,有些生疏Web框架的发展。偶尔了解一下Web框架的发展动向,发现又是一番新的景象。

这几年MVC设计思想的繁荣应归功于Java框架的带动,Struts的普及使得MVC设计达到鼎盛,一时间MVC似乎成了判断是非好坏的标准。不少Java实现的站点采用Freemarker框架生成静态html以加快页面响应速度。如果结合其他框架,可以有类似Freemarker+Webwork+Spring+Hibernate这样的选择。但是由于开发效率一直比较低同时后期维护具有局限性,面向J2EE的Web开发开始走向一个低谷,激进分子甚至宣称“J2EE的时代已经终结”。虽然此观点有失偏颇,但还是欣喜的看到,基于Ruby、Python等动态解释型语言在Web上的迅速发展的确令人振奋。

这里主要说一下Ruby on Rails,ROR是由来自37Signals的一批非常Cool的年轻人开发,在37Signals官方站上有ROR实现的独具特色的站点。有些人预言37Signals将成为下一个Google,也许吧,毕竟网络时代已经可以把创造神话的时间缩短到让我们来不及反应。

与Python实现的Web框架Django相似,ROR也是应用在web应用开发上的Framework。ROR由Ruby语言编写,其目的是让web开发变的快速而简单,ROR极大程度上简化了传统的Web开发难度,让开发者专注于富有创造力的工作,非常适于敏捷开发的要求。ROR的便捷之处在于,只要有了系统的完整E-R 图设计,就可以在 ROR中自动生成所有的 Models,Views 和 Controllers,可以在此基础上不断细化完善成为自己的应用。而且 Rails 还提供内置方法以及AJAX模块来加速开发。毕竟Ajax目前被炒的火热,在必要时可以加入,可以使用户有一些很Cool的体验感觉。希望Python的世界也会出现一个类似ROR这样可以一统目前纷乱局面的Web框架,但就目前的现状看,还没发现有哪个Python项目有能达到ROR这样优秀的潜力,看来还需要等上不短的时间。

抽空打算用ROR实现一个原型站点试试,不过发现似乎快成闲人了,因为只有闲人才会这也学那也学,是好奇心较重还是比较闲也说不准,反正平日的时间大多都塞满,还有许多事情要赶着做出来,慢慢来吧,不过ROR带来的诱惑还是很大的。