基于项目的最差实践,可以总结出一套项目架构的最佳实践原则以便今后的复用和改进。
原则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. 如果不是非常特别的需要,尽量不要过多的使用代码生成工具。代码生成工具能够极大的提高编程效率,但是,如果不熟悉生成工具所采用的组件及配置,那么尽量不要使用,当生成的大量代码不能根据你的定制化复用或工作时,相信你只有欲哭无泪了。
分享到:
相关推荐
### 开发高性能J2EE应用最佳实践 随着技术的发展与硬件性能的提升,开发高性能的应用程序已成为企业级软件开发中的重要课题。本文将基于提供的文件摘要,深入探讨如何开发高性能的J2EE(Java 2 Platform, ...
### J2EE的潜在难点及最佳实践 #### 绪论 Java 2 Platform, Enterprise Edition (J2EE) 是一种广泛应用于企业级软件开发的技术框架,由一系列相关的规范组成,旨在提供一个统一的标准来实现和部署企业应用。J2EE ...
它定义了一系列原则和架构层次,以支持开发人员在开发过程中遵循最佳实践,提高代码可维护性和系统扩展性。 ### 2. 架构规范原则 #### 2.1 层次化 层次化设计是J2EE架构的核心,它将应用程序分解为多个独立的组件...
书中的案例分析和最佳实践将有助于你提升解决问题的能力,并在解决复杂系统设计挑战时更有信心。同时,阅读DVT.Press.The.J2EE.eBook-LiB这样的电子书资源,将加深你对J2EE架构的理解,助力你在IT行业中取得更大的...
通过对这些源码的分析和学习,开发者可以加深对J2EE设计模式的理解,掌握实际项目开发中的最佳实践,从而提升自己的技能水平。无论是初学者还是有经验的开发者,这份资源都能提供宝贵的参考和学习材料。
它全面地涵盖了成为J2EE架构师所需掌握的各项核心技术,旨在帮助读者深入理解J2EE平台的核心概念、设计原则和最佳实践。 J2EE(Java 2 Platform, Enterprise Edition)是Java平台的企业版,主要用于构建分布式、...
10. **最佳实践**:最后,资料会分享一些在实际项目中积累的最佳实践,帮助读者避免常见陷阱,提高开发效率。 通过学习这份《J2EE高级软件架构师培训资料内部资料-架构物理设计》,读者能够掌握J2EE环境下进行架构...
这本书深入浅出地探讨了J2EE平台的核心技术和最佳实践,旨在帮助读者从宏观和微观两个层面理解并设计出高效、可扩展且易于维护的企业级应用。 J2EE(Java 2 Platform, Enterprise Edition)是Oracle公司推出的用于...
这本《J2EE架构师手册》很可能详细讲解了这些技术的原理、最佳实践、设计模式和案例研究,帮助读者从整体上理解J2EE架构的构建和优化。通过阅读HTML文件,你将能够深入了解如何利用J2EE组件构建可扩展、健壮的分布式...
虽然《中小型公司的J2EE最佳实践》不是一个实际的项目案例,但它为开发者提供了一个全面的视角,帮助他们理解和实施J2EE项目的最佳实践,从而提升开发效率和软件质量。这份文档对于希望在J2EE领域提升自己的程序员来...
本篇文章将详细阐述两个核心的最佳实践:一是始终使用MVC(Model-View-Controller)架构模式,二是避免将业务逻辑放入控制层。 1. 始终使用MVC模式: MVC模式是构建Java EE应用的基础,它有效地将业务逻辑(Model)...
J2EE项目开发模板则是开发者在创建大型、复杂的企业系统时遵循的一套规范和最佳实践,它能帮助团队高效地组织代码,提升开发效率,并确保项目的可扩展性和可维护性。 **一、J2EE架构概述** J2EE架构包含多个层次,...
《J2EE架构师手册》这本书可能详细阐述了这些技术的原理、实践方法以及最佳实践,对于想要成为或已经是J2EE架构师的人来说,是一份不可多得的参考资料。通过阅读和学习这本书,读者可以提升对J2EE体系的理解,更好地...
蓝图提供了分布式组件架构的最佳实践和设计指导,为开发人员提供了一套标准和准则。 Rational统一过程(RUP)是一种软件开发方法学,它强调了严格的任务分配和职责界定,旨在确保项目按时按预算交付高质量的软件。...
5. **设计模式与最佳实践**:书中会讨论一些针对J2EE平台的特定设计模式,如Session Bean和Singleton Bean,以及如何在实际项目中应用这些模式以优化架构。 6. **性能优化**:讲解如何调整J2EE应用程序以获得更好的...
3. **开发流程与协作**:团队开发中的版本控制、代码审查、单元测试等最佳实践,以及如何有效协作。 4. **问题解决**:在项目开发过程中遇到的实际问题,如性能瓶颈、并发控制、数据一致性等,以及解决方案。 5. *...