三层结构程序设计(笔记)

一、基础概念

        两层结构:客户端-服务器

        三层结构:客户机-应用服务器-数据库服务器

       三层体系结构是在客户机和数据库之间加入了一个中间件层,也叫组件层。三层是指逻辑上的三层,即是这三个层放置到一台计算机上。三层结构包括:显示层(View/UI)、业务逻辑层(BLL-BusinessLogic Layer)、数据访问层(DAL-Data Access Layer)

二、应用场景

        当业务复杂到一定程度,当数据存储需要一个独立的存储介质时。

三、优缺点

    优点:

        1、开发人员可以只关注整个结构中的其中某一层;

  2、可以很容易的用新的实现来替换原有层次的实现;

  3、可以降低层与层之间的依赖;

  4、有利于标准化;

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

    缺点:

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

        2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。

四、基础知识

    显示层(View/UI):

        作用:向用户展示特定业务数据;采集用户的输入信息和操作

        设计原则:用户至上、兼顾简介

        常用技术:

                WindowsForm : Form 、Control

                ASP.NET: aspx、ascx、masterhtml

    业务逻辑层(BLL-Business LogicLayer):

        作用:从DAL中获取数据,以供UI先使用

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

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

        职责机制:

                UI->BLL->UI

                UI->BLL->DAL->BLL->UI

    数据访问层(DAL-Data Access Layer):

        作用:从数据源加载、写入、删除数据;

        常用技术:

                ADO.NET+SQL语句

                O/R Mapping框架 NHiberate

                访问SQL Server数据库时Linq to SQL

五、应用原则

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

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

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

        引用关系:UI->BLL->DAL

猜你喜欢

转载自blog.csdn.net/sevengirl2017/article/details/80215329