初识三层

     初识三层很新鲜,又接触了新的内容,还是菜菜鸟的我只能简单写写,慢慢进步!

什么是两层?

     程序设计一般包括了用户界面、应用逻辑、数据库服务器,但是两层是将用户界面和应用逻辑合并在一起,称为客户机;而数据库则就是服务器了,客户机和服务器之间通过SQL语言进行对话。整个程序分为两部分,所以是两层。

什么是三层?

     三层就是把两层中的客户机层进行分离,将用户界面和应用逻辑分成两部分,再加上数据库,这样就是所说的三层。用户界面和应用逻辑通过自定义协议进行交互,应用逻辑和数据库通过SQL语言进行交流,这样层层相依的三部分就是我们说的三层结构程序设计。

两三层图示对比

初识三层_第1张图片

三层概述

三层在物理层面上叫做:显示层、业务层、数据层;在逻辑层面上叫做:UI、BLL、DAL。

分层的目的是为了实现:高内聚,低耦合的设计原则。

【表现层UI】

1、展示给用户的界面,即用户在使用一个系统的时候所能看到的界面;

2、向用户展现特定业务数据;

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

【业务逻辑层BLL】

核心部分,起着承上启下的作用。是用户显示层和数据访问层对话的桥梁。

1、对数据层的操作和业务的处理,即从DAL中获取数据,以供UI显示用;

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

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

【数据访问层DAL】

直接操纵数据库,主要是增删改查的功能。

1、从数据源加载数据select;

2、向数据源写入数据insert  update;

3、从数据源删除数据delete;

三层之间的关系

初识三层_第2张图片

数据访问层的类,直接访问数据库,实现基本记录操作。
业务逻辑层的类,调用相关的数据访问类,实现用户所需功能。
界面层:部署控件后,调用业务逻辑层的类,实现功能。

职责机制

     UI发出请求调用BLL,BLL向DAL访问得到信息,反馈给BLL层,然后在显示在UI层上,实现了UI和DAL的间接联系。层层之间的引用也是依次的,UI层引用BLL层,BLL层引用DAL层的内容。

三层的优缺点

优点

     1、开发人员可以只关注整个结构中的其中某一层; 
  2、可以很容易的用新的实现来替换原有层次的实现; 
  3、可以降低层与层之间的依赖; 
  4、有利于标准化; 
     5、利于各层逻辑的复用。 

缺点

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


     学习了三层的程序设计并不是说任何系统都要进行三层设计,在恰当是时间恰当的地点合适的使用才是正确的,没有数据访问层,业务逻辑简单的程序同样应该使用两层设计,切记不可乱用,否则根本不能实现简洁方便的目的。


你可能感兴趣的:(初识三层)