三层架构(基础篇)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hejingfang123/article/details/82261697

什么是三层架构?

        三层架构 通常意义上的三层架构就是将整个业务应用划分为:界面层(User Interface layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。区分层次的目的即为了“高内聚,低耦合”的思想。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。微软推荐的分层式结构一般分为三层,从下至上分别为:数据访问层、业务逻辑层(又或称为领域层)、表示层。

 

为什么要用三层架构?

        区分层次的目的是为了高内聚,低耦合

好处:

1、开发人员可以只关注整个结构中的其中某一层;

2、可以很容易的用新的实现来替换原有层次的实现;

3、可以降低层与层之间的依赖;

4、有利于标准化;

5、利于各层逻辑的复用。

不足:

       1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。

       2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。

 

什么时候使用三层架构?

        业务逻辑复杂到一定程度时使用三层架构

        业务逻辑简单、没有真正的数据存储层,也就不需要数据访问层,也就不需要使用三层架构了

 

三层如何划分?

多层结构划分方式:物理/逻辑

物理:显示层、业务层、数据层

逻辑:UI/BLL+DAL/DB

 

结构

三层架构每一层的作用分别是什么?

UI层:

向用户展现特定的业务数据

采集用户的输入信息和操作

 

BLL层:

从UI中获取用户指令和数据,执行业务逻辑

从UI中获取用户指令和数据,通过DAL写入数据源

从DAL中获取数据,以供UI显示用

BLL层职责机制:

UI⇄BLL⇄UI

UI⇄BLL⇄DAL⇄BLL⇄UI

 

DAL层:

从数据源加载数据(Select)

向数据源写入数据(Insert/Update)

从数据源删除数据(Delete)

 

各层之间的引用关系?

UI→BLL→UI

 

具体应用原则?

1.UI只负责现实和采集用户操作,不包含任何的业务相关的逻辑处理。

2.BLL负责处理业务逻辑。通过获取UI传来的操作指令,决定执行业务逻辑,在需要访问数据源的时候直接交给DAL处理,处理完成后,返回必要数据给UI。

3.DAL只提供基本数据访问,不包含任何业务相关的逻辑处理。

4.如果需要增加实体类Model时,UI、BLL、DAL都需要引用Model。

猜你喜欢

转载自blog.csdn.net/hejingfang123/article/details/82261697