J2EE项目架构最佳实践

基于项目的最差实践,可以总结出一套项目架构的最佳实践原则以便今后的复用和改进。
         原则1. 时间总是非常紧,需求总是在变化,技术问题总是层出不穷,千万不要认为软件工程的问题不会发生在规范的公司和项目。每次一定要根据自己所处的位置作出正确的评估,比如项目经理做评估要留出足够的时间buffer,开发人员应当正确评价自己的工作量,尽可能开始工作。
         原则2. 项目架构必须得完成基本的内容,即使时间非常的紧迫。以一个三层架构的企业级网站来说,数据库建模,页面流程图和业务逻辑的sequence图是必须的。
         原则3. 数据库模型一定要尽早考虑,,无论是采用DDD还是TDD,数据库都是基石,尤其是采用hibernate这样的工具,数据库的建立意味着可以采用工具生成PO, DAO,那意味着你已经完成了20%的工作。
         原则4. 使用中间的业务逻辑层。常常看到Action中直接调用dao编写业务逻辑的例子,这样做并非不可以,在一些小型的项目中能够节省时间,但在大型项目中,业务逻辑集成在action会导致可维护性变差,举例而言,比如客户临时变更需求需要将某项业务逻辑作为web service对外发A布;而后者的优势就显现了,只需要添加额外的包,重启运行测试的工作不涉及新包以外的代码,当然也就能减少系统的故障率。
         原则5. 对中间的业务逻辑层,采用面向接口编程。很多人不知道spring提倡的面向接口编程在哪里使用,于是到处都用,事实上,使用得不好常常会因为接口和实现的变动而造成困扰,正确的做法是:将业务逻辑抽象出来作为接口,这套接口一定要像数据库一样千锤百炼,好的接口能更好的适应变化。业务逻辑层的稳固有助于工作的分离和解耦,一旦接口定义出来,开发struts和业务逻辑的人就可以分开并行工作,并且相互的变动不会受到影响,被非常好的分离了,所以,中间的业务层接口定义,是第二层基石,与数据库一起构成了三层结构,二层基石。
         原则6. 美工页面要先于编写jsp完成。虽然说MVC的使用有助于分离美工与开发者,但是有的工作未必能完全并行,美工的页面需要基于pageflow完成,而页面的布局和样式需要得到客户认可,因此一定要尽早引入美工,当美工完成静态页面时,开发jsp才不会浪费时间,否则,常常会因为页面而影响到控制逻辑。
         原则7. 采用统一的架构,预先写好基础代码。统一架构对于项目的可维护性尤为重要,比如读取日志,读取配置,基础DAO,基础ACTION,基础FORM等等。基础的架构减少了不必要的重复工作,加快了项目开发速度,其重要层度,是我每次都必然强调的。也正因为如此,该文章的系列将会连载架构一个项目的基础代码。
         原则8. 如果不是非常特别的需要,尽量不要过多的使用代码生成工具。代码生成工具能够极大的提高编程效率,但是,如果不熟悉生成工具所采用的组件及配置,那么尽量不要使用,当生成的大量代码不能根据你的定制化复用或工作时,相信你只有欲哭无泪了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值