三层架构(Three-Tier-Framework)
通常意义上的三层架构就是将程序划分为三个层次:表现层(UI),商业逻辑层(BLL),数据访问层(DAL).分层的目的就是遵循“高内聚,低耦合”的原则,增强程序的灵活性,可复用性和可移植性。
三层架构示意图
各层各司其职
UI层,就是界面层,即用户在使用一个系统的时候的所见所得。接受用户的输入,并将结果显示给用户
BLL层,针对具体问题的操作,也可以说是对数据层的操作,对业务逻辑进行处理(此层是整个三层架构的核心)
DAL层,该层主要用于数据的访问,直接操作数据库,针对数据库的增、删、改、查(数据的连接和操作均发生在此层)
在设计三层架构时,往往还需要一个存放实体类(Entity Classes)的命名空间(Model),此命名空间中的实体类与数据库中的表相对应(将Table中的Field映射为实体类的Property)。实体类不属于三层中的任何一层,它作为层与层之间参数传递的类型出现,将参数封装在实体类中。
三层之间的调用关系都是单向的,这样可以降低耦合。从上到下具有依赖关系,从下到上不具有依赖关系。层与层之间通过接口调用可以在一定程度上降低由上而下的依赖关系
三层扩展
三层是最常用的一种软件架构,软件具体分几层要看软件的规模和实际的需要。软件的多层架构(N-Tier-Framework)是对三层架构的一个扩展。无论分几层最终的目的都是:高内聚低耦合,增强软件的灵活性和可扩充性,可移植性。
(引)