现在的位置: 首页 > 综合 > 正文

加深对系统设计架构的认识

2013年10月16日 ⁄ 综合 ⁄ 共 758字 ⁄ 字号 评论关闭
看了一些关于系统设计架构的讨论,总结如下:
1.大量sp,在数据库中利用sp和触发器等实现数据存取验证和存取逻辑,适用于数据库(数据资料)相对稳定,而应用程序开发工具多样化的项目。做大型企业级项目可以采用此方案。
2.大量细粒度的sp,仅仅是为了提高存取效率。
3.不用sp,仅量使用程序代码实现数据存取,是为了更好地“移植”数据库引擎,转换到另一种数据库。设计软件产品时应采用此方案,可以支持各种不同的数据库引擎。
4.DAO层,封装数据存取操作,通过对象实体(model)或记录集(DataSet)。目的是替换DAO实例,更换成另一种数据库引擎,设计软件产品时采用此方案。
5.BLL层,业务逻辑层封装对实体对象(model)的操作,有了model层的支持可以完全面向对象设计,控制这些model的操作。
6.UI层,aspx页面是view,aspx.cs是分派后的controller,servlet是一种集中管理的controller,相应.NET里的IHttpHandle接口。通常UI逻辑可以在.cs里实现(可能会调用业务逻辑),但对于实现很多页面共有的控制逻辑(如登录验证),显得力不从心。
7.软件系统分N层,目的是将大型项目分成不同的任务协作开发,更利于代码维护。
8.Model层,对象实体层是OO与OD(面向数据)的衔接,通常作为参数传递,不需要定义逻辑。
9.如果用记录代替实体对象编程,那么可以更方便地实现过滤,迭代等操作,直接得到DataSet的支持,但与OO思想相背离。
10.ORM试图完全面向对象设计,但并不总是能够有效实现所有的对象相关的数据库操作,如复杂的数据库查询。甚至可能打破DAO层的封装,但可以设计一个通用(支持各种数据库引擎)的数据访问接口来封装构造SQL的过程。
11.待补充。。。。。 

抱歉!评论已关闭.