首页 > 代码库 > 初步认识三层架构

初步认识三层架构

         谈到三层,大家脑子里会立马浮出:显示层(UI)、业务逻辑层(BLL)、数据访问层(DAL。就是将整个业务应用划分为这三个层次。

         三层结构是基于模块化程序设计的思想,为实现分解应用程序的需求,而逐渐形成的一种标准模式的模块划分方法。目的是为了解耦合,也是就是实现“高内聚、低耦合”的思想。


显示层UI

通俗的讲就是展现给用户的界面,及用户在使用一个系统的时候他的所见所得

业务逻辑层BLL

针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。

数据访问层DAL

该层所做事物直接操作数据库,针对数据的增删改查等

下面我们香葱一个例子来初步认识三层,帮助我们理解。

        我们知道,饭店里要有服务员、厨师、后勤人员。各个员工各司其职,服务员只管接待客人,向厨师传递顾客的需求;而厨师只管烹炒顾不同口味、不同特色的美食;后勤工作人员只管提供美食原料。


什么情况要我们没必要使用三层呢?

1、业务逻辑简单的情况下没必要使用,因为三层结构也是存在缺点的,不是任何时候使用都恰当。

2、没有真正的数据存储层,所以也就不需要访问数据层。

那么什么情况下我们使用三层呢?

       抽象出业务逻辑层,当业务复杂到一定程度,数据存储到相应的数据库或独立的数据存储介质,需要使用三层。把数据访问脱离开业务单独存在,把业务脱离开UI单独存在(UI只需要呼叫业务访问层实现和用户的交互)

通过学习王继斌老师的三层视频,初步认识了三层的作用。

各层的作用

 

作用

UI

向用户展现特点业务数据

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

 

BLL

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

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

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

DAL

从数据源加载数据(Select

向数据源写入数据(InsertUpdate

从数据源删除数据(Delete

三层架构的优点:

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

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

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

4、有利于标准化

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

同样他也有它的缺点和不足之处:

        代码量太多,执行速度慢。所以他不适用于对执行速度非常高的系统,会降低系统的性能,也会增加开发成本。

总结:

       以三层架构模式开发出来的软件,极大的增加了软件的可维护性,但是还要权衡利弊,看看是否需要用到它。