多层架构是软件开发中的重要主题,其中最基本的是三层架构。三层架构是很早就提出来的一种软件的组织形式。以下以C#语言,表达三层架构在代码中的表现形式。
-
UI(Presentation layer),表现(层)
- 是业务功能的出口,应该让用户看到并接受的地方。
- 界面代码在此层保存。
-
BLL( Business logic layer ),业务逻辑层
- 是业务功能的运算和处理中心,是从UI层引申出来的独立层。
- 业务逻辑代码在此层保存。
-
DAL(Data access layer ),数据访问层
- 数据的 存储 和 查询 功能的中心。
- 存储与查询数据的代码在此层保存。
项目代码地址:https://github.com/snowleung/ThreeLayerDemo
UI代码:
- 只有文本框和提示信息
- 引用业务逻辑层进行逻辑运算,如Login, Register等功能
BLL代码:
- 只有业务逻辑的运算
- 引用数据访问层(实现了如何才是登录、如何才是注册等功能)
- 通过模块(User)+Manager的命名方式来组织代码,方便分块管理。
DAL代码:
- 只有数据的查询和存储运算
- 引入数据库
- 通过模块+Server的命名方式组织代码,方便管理对应的数据表
- UI层和BLL层,通过函数返回值进行通讯(如成功返回True)
- BLL和DAL层,通过实例化的类进行通讯(如成功返回一个UserModel)
- DAL层和数据库,通过DataSet类进行通讯(如有数据则返回一个DataSet)
- WIKI: Three-tier architecture