• 三层(3-tier architecture)基础


    版权声明:本文为博主原创文章,未经博主同意不得转载。

    https://blog.csdn.net/lhc2207221755/article/details/24802053

        之前看过非常多关于三层的博客,所以这次自己重学三层之前,就给自己提了几个问题:一。三层指的是哪三层,每层的作用是什么? 二,为什么要分三层?  三,三层结构的优缺点?  四,怎样分层?


         以下。让我们来逐一回答这些问题。


         一。三层指的是哪三层,每层的作用是什么?

             三层架构(3-tierarchitecture) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据訪问层(DAL)。


         


    各层作用:

    1,数据訪问层:主要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,而不是指原始数据,也就是说,是对数据的操作,而不是数据库,详细为业务逻辑层或表示层提供数据服务.

     

    2,业务逻辑层:主要是针对详细的问题的操作。也能够理解成对数据层的操作。对数据业务逻辑处理,假设说数据层是积木。那逻辑层就是对这些积木的搭建。

     

    3,表示层:主要表示WEB方式。也能够表示成WINFORM方式。WEB方式也能够表现成:aspx,假设逻辑层相当强大和完好,不管表现层怎样定义和更改,逻辑层都能完好地提供服务。


       二,为什么要分三层?

        

    区分层次的目的主要是为了实现“高内聚,低耦合”,并充分发挥三层的长处.


       三,那么。三层都有哪些优缺点呢?

     长处

    1、开发者能够仅仅关注整个结构中的当中某一层;

    2、能够非常easy的用新的实现来替换原有层次的实现;

    3、能够减少层与层之间的依赖;

    4、有利于标准化;

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

    6、结构更加的明白

    7、在后期维护的时候,极大地减少了维护成本和维护时间

     

     缺点

    1、减少了系统的性能。

    这是不言而喻的。

    假设不採用分层式结构,非常多业务能够直接造訪数据库。以此获取对应的数据,现在却必须通过中间层来完毕。

    2、有时会导致级联的改动。

    这样的改动尤其体现在自上而下的方向。假设在表示层中须要添加一个功能。为保证其设计符合分层式结构,可能须要在对应的业务逻辑层和数据訪问层中都添加对应的代码。

    3、添加了开发成本。


    四,怎样分层的问题

    1:数据訪问层:主要看你的数据层里面有没有包括逻辑处理,实际上他的各个函数主要完毕各个对数据文件的操作。而不必管其它操作。

     

    2:业务逻辑层:主要负责对数据层的操作。也就是说把一些数据层的操作进行组合。

     

    3:表示层:主要对用户的请求接受,以及数据的返回,为client提供应用程序的訪问。


     



  • 相关阅读:
    F2. Same Sum Blocks (Hard) 解析(思維、前綴和、貪心)
    E. Copying Data 解析(線段樹)
    B. Nauuo and Circle 解析(思維、DP)
    POJ3436-ACM Computer Factory(最大流)
    A.牛牛扔牌(双端队列)/B.疯狂过山车(最长上升子序列)/C.牛牛的棋盘(容斥原理)
    CodeForces 665E. Beautiful Subarrays(字典树)(贪心)(异或前缀和)
    CodeForces 455C.Civilization(并查集)(树的直径)
    CodeForces 1021B. Chemical table(并查集)
    CodeForces 961E. Tufurama(主席树)
    CodeForces 1024C. Array Product(模拟)(分类讨论)
  • 原文地址:https://www.cnblogs.com/ldxsuanfa/p/10832039.html
  • Copyright © 2020-2023  润新知