最近在学习三层架构,今天 就给大家讲解一下三层架构。
首先先提几个问题,1.什么是三层架构?2.为什么要学习三层架构?3.如何使用三层架构?
下面就为大家来一一解答这三个问题。
通常三层架构就是由表示层(UI),业务逻辑层(BLL),数据访问层(DAL).
表示层:主要表示WEB方式,也可以表示成WINFORM方式,WEB方式也可以表现成:aspx,如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层都能完善地提供服务。
业务逻辑层:主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理,如果说数据层是积木,那逻辑层就是对这些积木的搭建。
数据访问层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表 示层提供数据服务.
在面向对象的发展过程中,高内聚,低耦合的要求越来越高,每个模块的更改对别的模块不会有影响。在这个过程中,三层架构便诞生了,三层架构的诞生极大的结构了,模块之间耦合性高的问题。
在一个程序当中无论你写的是什么,无论是面向过程,还是面向对象的,都离不开显示,逻辑处理,访问数据库。所以经过一代又一代人的总结,将每个过程都进行抽象,最后将整个系统分层三层。这是前人的经验,所以我们要学会站在巨人的肩膀伤上。
三层架构的优点:
1、开发人员可以只关注整个结构中的其中某一层; 2、可以很容易的用新的实现来替换原有层次的实现; 3、可以降低层与层之间的依赖; 4、有利于标准化; 5、利于各层逻辑的复用。
知道了什么是三层架构,以及为什么要学习三层架构,接下来我们要做的就是如何去使用三层架构。如何建立三层架构。在vs中建立一个项目不管是winform 还是web的都可以,然后再项目中建立两个类库,一个名字为DAL, 一个名字为BLL,加上我们刚才最初建立项目的那个类,便组成的最简单的三层架构。如图所示:
三层架构的引用关系式UI引用BLL,BLL引用DAL,直接在应用当中添加就可以。添加完成以后,在UI层就可以使用BLL层类中的方法。在BLL层当中就可以使用DAL层中的方法,这样极大的解除了耦合性,在UI层当中,A窗体可以使用,B窗体亦可以使用,极大程度的符合面向对象原则。用一幅图更能说明问题
先把数据传递到D层,然后再把需要的数据返回给我用户。
通过这些大家对三层有了一定的了解,最重要的还是在今后的系统开发中将三层应用进去。这样我们才能熟练的掌握三层架构,并在三层架构中加上设计模式,让我们做的系统更加的符合面向对象的思想。