.NET三层架构解析:什么是三层架构

如题所述

第1个回答  2022-11-08
    所谓三层架构 是在客户端与数据库之间加入了一个 中间层 也叫组件层 这里所说的三层体系 不是指物理上的三层 不是简单地放置三台机器就是三层体系结构 也不仅仅有B/S应用才是三层体系结构 三层是指逻辑上的三层 即使这三个层放置到一台机器上     在项目开发的过程中 有时把整个项目分为三层架构 其中包括 表示层(UI) 业务逻辑层(BLL)和数据访问层(DAL) 三层的作用分别如下     表示层 为用户提供交互操作界面 这一点不论是对于Web还是WinForm都是如此 就是用户界面操作 我们网站展示给用户看的界面     业务逻辑层 负责关键业务的处理和数据的传递 复杂的逻辑判断和涉及到数据库的数据验证都需要在此做出处理 根据传入的值返回用户想得到的值 或者处理相关的逻辑     数据访问层 见名知意 负责数据库数据的访问 主要为业务逻辑层提供数据 根据传入的值来操作数据库 增 删 改或者其它     以下我简单介绍下一个用户管理模块:    为了整个项目的开发方便 我们在项目中会建几个类库SQLHelper BLL DAL Model和一个Web网站 为了命名清晰 我们可以这样命名这个三个工程(即在解决方案里添加的类库):    业务逻辑层(BusinessLogicLayer) BLL 命名空间默认设置为BLL    数据访问层(DataAccessLayer):DAL 命名空间默认设置为DAL    SQL帮助类 SQLHelper 命名空间默认设置为SQLHelper    另外我们为了数据传递的方便 通常再添加一个类库 这个类库是贯穿于整个三层架构中的 即实体类 通常命名为Model 命名空间默认值设置为 Models 其中封装的每个类都对应一个实体 通常就是数据库中的一个表 如数据库中的用户表(custom)封装为(custom) 将表中的每个字段都封装成共有的属性     这样三层架构的搭建就基本完成了 这三层有着非常强的依赖关系     表示层 ← 业务逻辑层 ← 数据访问层    他们之间的数据传递是双向的 并且通常借助实体类传递数据     那么三层架构都有哪些优点呢     易于项目的修改和维护 在项目的开发过程中或者开发后的升级过程中 甚至在项目的移植过程中 这种三层架构是非常方便的 比如项目从Web移植到Form 我们只需要将表示层重新做一遍就可以了 其余两层不用改动 只需添加到现有项目就可以了 如果不采用这种架构 只是将代码写到表示层 那么所有的编码几乎都要重新来了     易于扩展 在功能的扩展上同样如此 如有功能的添加只需把原有的类库添加方法就可了    易于代码的重用 这一点就不用解释了     易于分工协作开    还可以加个接口类库Iinterface 加入设计模式 使你的代码灵活性更好 质量更高     其实 当我们做一个项目时 我们应该先考虑一下这个项目是不是应该应用三层/多层设计时 先得考虑下是不是真的需要? 实际上大部分程序就开个WebApplication就足够了 完全没必要作的这么复杂 而多层结构 是用于解决真正复杂的项目需求的 lishixinzhi/Article/program/net/201311/12405

相似回答