NinetyNine's Treasure

| 积淀*育创新 智慧创造价值|

导航

一个容易理解的三层架构的介绍

Posted on 2007-09-05 13:37  (NineTyNine)  阅读(1095)  评论(2编辑  收藏  举报
(从网上找到的一个容易理解的三层架构的介绍,原址:http://zhidao.baidu.com/question/29476722.html?si=1

三层,一般包含:

数据访问层:也叫 DataAccess层、DAL(DataAccess Layer层),这一层的工作就是与数据库或其它文件打交道,

业务逻辑层:也叫中间层,Bussiness Logical layer,也可说是Bussiness Rule(业务规则),这一层是处理业务逻辑的。

外观层:不记得英文缩写了,P开头的,呵呵,这一层主要是与用户打交道,也就是界面。比如是Web,也可能是WinForm.


打个比方来说,你要做一个简单的功能:往数据库里插入一条学生记录

外观层:只是处理你的界面应该怎么展示,比如控件的布局,还有一个主要的就是把界面上控件内的数据读取下来。这一层主要做的事情,就是从外部获取数据,当然还有一些简单的判断,比如判断那些数据是不能为空的,必须输入。
然后调用中间层的一个访问,通过参数的形式转过去。

中间层的接到从外观屋传来的数据,这里就做业务辑逻的判断。比如判断只有20岁以上的人才能保存在数据库等,反正这里是关心业务的,通过业务逻辑层的数据,就调用数据访问层的方法


数据访问层只做与数据库打交道的工作(也可以是与文件打交道,毕竟保存数据的地方不只有数据库)。数据库访问层不会对业务逻辑做过多的判断,他的任务就是为了把中间层传过来的数据如果保存在数据库中。



三层框架只是一种思想,就是任务职责的分解。

简单的说,你可以用三个函数(function)来实现,

比如fun1的任务是把界面上的数据读取两个数字中,然后把这两个数据传给fun2,他不管fun2拿这两个数据来干什么的。

fun2的任务就是把这两个数字相减或相加,fun1和fun3是不管的(这一层是的操作是根据你的具体业务来)。

第三个fun3的任务就是访问数据库,把fun2操作运算过的一个数字保存到数据库中

再大一点,你可以用三个类来分开实现

再大一点来说,你可以建三个不同的项目来实现(企业级架构就是这样的)

三层架构只是最简单的分层思想,其它的一些N层构架也是从这个基础上延伸的,所以你一定要理解好,才能扫平以后的学习障碍。