上篇博客从日常生活中对软件设计的三层结构进行了简单的剖析,该篇博客主要总结各层功能。
下图为三层的结构模型:
数据访问层
主要负责数据库的访问,实现对数据表的增删改查操作。在分布式应用程序结构中,使用 ADO.NET 数据适配器和 SQL 服务器存储过程来完成。
作用
(1)从“业务规则”层接收请求,从“数据服务”获取数据或向其发送数据。
(2)使用存储过程获取数据,并可选用 ADO.NET 向数据库发送数据。
(3)将数据库查询结果返回到“业务规则”层,作为ADO.NET 数据集。
业务逻辑
是整个系统的核心,它与这个系统的业务有关。它们实现业务实体或系统对象。系统的业务规则将在这些对象中编码。
作用
(1) 从“用户界面”层接受请求。
(2) 根据编码的业务规则处理请求。
(3) 从“数据访问”层获取数据或将数据发送到“数据访问”层。
(4)将处理结果传递回“用户界面”层。
用户界面
系统的UI部分。在分布式应用程序结构中,用户服务可以是 Web 客户端或 Windows 客户端,这具体取决于特定的应用程序。例如,在开发Web 应用程序时,可能需要提供具有标准 Windows 用户界面或 Web 用户界面。通常,这种一般类型的应用程序包含以下功能:
作用
(1)管理 Web 页或 Windows 界面的呈现和行为
(2)显示数据
(3)捕获数据
(4)数据验证检查
(5)为用户提供任务指南
(6)向“业务规则”发送用户输入
(7)从“业务规则”接收结果
(8)向用户显示错误
概括来说,分层设计主要为了达到:分散关注、松散耦合、逻辑复用、标准定义的目的。好的分层式结构,可以使开发人员的分工更明确。
三层设计的优点还有:
1、开发人员可以只关注整个结构中的其中某一层;
2、可以很容易的用新的实现来替换原有层次的实现;
3、可以降低层与层之间的依赖;
4、有利于标准化;
5、利于各层逻辑的复用。
具体区分方法:
1:数据数据访问层:主要看数据层里面有没有包含逻辑处理,实际上他的各个函数主要完成各个对数据文件的操作。而不必管其他操作。
2:业务逻辑层:主要负责对数据层的操作。也就是说把一些数据层的操作进行组合。
3:表示层:主要对用户的请求接受,以及数据的返回,为客户端提供应用程序的访问。