论文部分内容阅读
当今社会信息化不断朝着更高,更快,更深的程度发展,软件的应用是无所不在。然而,可以看到大多软件随着时间的推移,不断腐化,变得僵化而脆弱,许多公司的软件团队陷入了不断增长的过程泥潭。于是,在2001年初,一批业界专家聚集在一起概括了能让开发团队具有更快速工作、响应变化能力的价值观和原则,创建了敏捷联盟宣言。敏捷开发(Agile Development)是一种面临迅速变化的需求开发软件的能力。为了获取这种敏捷性,需要使用一些可以提供必要的纪律和反馈的实践。需要一些可以保持我们的软件灵活、可维护的设计原则,并且需要知道一些被证明的针对特定问题的用来平衡这些原则的设计模式。敏捷开发人员必须致力于保持设计尽可能地可维护,可重构。Rails是一个支持敏捷开发的开源框架,一个让Web开发、部署和维护变得更容易的框架,从而是开发者得到编程的乐趣和持续不断的生产力。本文中的Portal工程是某金融机构的项目MLR(Multi-bank Link Report)下一个子工程,主要目的就是为了支持报表的生成,为报表所需要的数据提供CRUD(create,retrieve,update,delete)功能。笔者原先参与开发一个用J2EE实现的版本,使用了具有诸多J2EE良好实践的技术如Hibernate,Struts等,作为与传统软件开发方法的对比,笔者使用Ruby on Rails重新开发了Portal,功能和界面和原来的J2EE版本几乎一致;不同之处在于使用的开发框架Rails包含了更多的敏捷思想,是一站式的针对开发数据库Web应用的域描述语言,让开发快捷简单。从开发这个Portal程序,可以对比J2EE和Rails开发过程的不同之处,得到了敏捷思想在实践中应用的一些结论等;并应用Rails中的两个核心原则:DRY(Don’t Repeat Yourself)和CoC惯例重于配置(convention over configuration),使开发更简单;最后讨论了敏捷框架Rails在企业级应用中的可行性。本文重点在于通过敏捷框架Rails的一些敏捷思想的应用,体味敏捷开发的简单。