浅谈三层

来源:互联网 发布:淘宝双色球 编辑:程序博客网 时间:2024/05/08 03:38

        最近接触了三层,算是面向对象思想开始逐渐运用的开端了吧,那么什么是三层呢?三层是三个层次的结构,所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交互。如下图

       

       三层架构分别是显示层、业务逻辑层和数据访问层:

       显示层(UI)

       向用户展现特定的数据,采集用户的输入信息和操作,主要指与用户交互的界面。

       业务逻辑层(BLL)

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

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

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

       数据访问层(DAL)

       从数据源加载数据(Select);

       从数据源写入数据(Insert/Update);

       从数据源删除数据(Delete)

       三层中的每一层各有分工,职责单一,具体应用如下:

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

       2、UI只负责显示和采集用户操作,不包括任何的业务相关的逻辑处理

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

       4、除此之外,还可以有实体层,用于在三层之间传输数据,独立于其他三个层次的存在,不会引用任何一个层次的程序集;还有Common,一般放置一些通用方法,如数据验证和控件操作方法等。

       三层架构的好处

       1、有效的将系统划分为界面处理层、业务逻辑层和数据访问层,使每一层都具有相对独立的职责,降低了层与层之间的依赖性,这样即使某一层发生变化,也不会影响到其它层,从而确保了架构的稳定性。

       2、将界面与逻辑代码分开,即使页面发生变化,对业务逻辑也不会产生影响,这样就做到了重用,到时候只需新建用户界面层而直接重用业务逻辑层提供的服务就好了。

       使用

      当你的业务复杂到一定程度,且数据要存储到相应的数据库或独立的数据存储介质时适合使用三层架构,一般用于较大型的项目,而一些小型的项目不适用三层反而会更便捷一些。

       小结

      三层的学习使我们更加的专业,然而纸上得来终觉浅,在接下来的学习实践中将会对三层逐渐应用,实践出真知!

0 0