三层总结(理论篇)——揭开三层的面纱

本文深入解析三层架构的概念,包括表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL),并探讨三层架构的优势与局限。同时,介绍实体层的作用,以及三层数据传递的方向。

    这段时间一直在等级考试中徘徊不定,对于三层一直没能够好好的总结。终于C++考试过去,虽然战况比较惨烈……C++的总结还是要写的。开始三层之前,一直不知道三层为何物,今天我们就来揭开它的面纱。

何谓三层?   

   三层架构,顾名思义,分为三层:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。下面让我们来依次认识一下吧!

(1)表现层(UI)

    主要是指与用户交互的界面,向用户展现特定业务数据,采集用户的输入信息和操作。表现层就如同服务员一样和蔼可亲,直接与我们交流,用户至上,养眼大方。

(2)业务逻辑层(BLL)

    业务逻辑层负责用户在UI层里提出的问题的操作,对其进行处理。它可以从DAL层获取数据,返回给UI层显示;还可以从UI中获取用户信息,通过DAL层写入数据库;也可以从UI层收集用户的指令和数据,执行业务逻辑。业务逻辑层就是如同服务员和采购员之间的桥梁,服务员(UI)向厨师(BLL)提供用户的菜单,厨师负责一系列的做菜,而厨师将所需的食材报告给采购员(DAL)。

(3)数据访问层(DAL)

    DAL直接负责对数据库的操作,实现对数据库的增删改查。

附图一张:

 


另增一层:实体层:一般实体层贯穿于整个架构中,在三层之间传递数据。有人说它“上蹿下跳”,同哪一层都有关系。其实它的存在,体现了面向对象的封装,实体层把所有的实体(属性)封装在一层,方便了代码的维护。说白了,它就是一个类而已。

看一下在三层中数据传递的方向:


使用三层的好处:解耦!

同设计模式一样,我们使用三层的目的也是为了解耦。

优点:解耦带来的好处不言而喻,结构更加明确,降低了依赖,易维护和扩展。

缺点:1.降低了系统的性能(通过中间层访问,效果不言而喻);

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

     3.开发成本增加。


     理论部分就到这里了,实践部分敬请期待!


评论 23
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值