我继承了一个大项目,它包含一个ASP.NET应用程序和一个VB6应用程序。
我正在尝试重构代码。我的问题是:将单个项目分成多个项目有哪些指导原则?我在网上进行了研究,一些开发人员表示为业务逻辑层和数据逻辑层创建单独的项目,但其他人说有一个公用事业项目。
其他开发人员使用哪些类别的项目?我正在寻找一个类别列表。
答案 0 :(得分:1)
如果您的系统非常复杂,您可以按子系统将其拆分为多个项目。
Code Complete中的Steve McConnell写道:“常见子系统:
业务规则:业务规则是您编码到计算机系统中的法律,法规,政策和程序。如果您正在编写工资单系统,您可以编制国税局关于允许预扣税数量和估计税率的规则。 ...
用户界面。创建一个子系统来隔离用户界面组件,以便用户界面可以发展而不会损坏程序的其余部分。 ...
数据库访问。您可以隐藏访问数据库的实现细节,以便大多数程序不需要担心操作低级结构的混乱细节,并且可以根据它在业务问题级别的使用方式处理数据。 ...
系统依赖关系。将操作系统依赖关系打包到子系统中的原因与打包硬件依赖关系的原因相同。例如,如果您正在为Microsoft Windows开发程序,为什么要限制自己使用Windows环境?隔离Windows界面子系统中的Windows调用。如果您以后想要将程序移动到Mac OS或Linux,那么您需要更改的是接口子系统。“
您还可以将通常创建的sonamed公共项目分离出来,以撕裂循环引用,并包含解决方案的常用接口和实用程序。