初学三层

一、两层结构及其局限性

       两层结构的特点:

                 数据库访问和用户类型判断逻辑放在一起实现

                 用户界面层直接调用数据访问实现

                 整个系统功能放在同一项目中实现

                                                         

                局限性:

                             一旦用户的需求发生变化,应用程序都需要进行大量修改,甚至需要重新开放,给系统的维护和

                 升级带来了极大的不便;用户直接访问数据库,会带来很多安全隐患。

                为了克服两层结构的局限性提出了三层结构,实现高内聚低耦合

二、什么是三层结构

       所谓的三层体系结构,是在客户端与数据库之间加入一个“中间层”,也叫组件层。

                                            

         中间层通常包括业务逻辑层(Business Logic Layer,简称BLL)、数据访问层(Database Access Layer,

         简称   DAL)和数据对象模型层(Database Object Model Layer,简称DOM),此时的三层结构软件模型为

                                       

          三层概念简介:

                             表示层(UI),即用户界面,是展现给用户的界面,用于显示和接收用户提交数据,表示层一般为

          Windows窗体应用程序或Web应用程序。

                 业务逻辑层(BLL),表示层和数据访问层之间沟通的桥梁,主要负责数据的传递和处理。

                 数据访问层(DAL该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。

                 数据对象模型层即业务实体层。主要用于表示数据存储的持久对象。在实际应用程序中的实体类是跟

        数据库中的表相对应的,也就是说一个表会有一个对应的实体类。而实体层不属于任何一层,贯穿于三层之

    间,是整个三层各负其责的同时又完美的结合在一起


                                                                                           

三、三层的优点

         1、对程序分而治之的思想:数据访问层只负责提供原原始数据,并不需要了解业务逻辑;业务逻辑层调用

              数据逻辑提供的方法把数据呈现给用户。

         2、不必为了业务逻辑上的微小变化而迁至整个程序的修改,只需要修改商业逻辑层中的一个函数或一个过

              程;增强了代码的可重用性;便于不同层次的开发人员之间的合作,只要遵循一定的接口标准就可以进

              行并行开发了,最终只要将各个部分拼接到一起构成最终的应用程序。

         3、三层结构的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,

              客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据

              库进行交互,这样会大大提高系统的安全性。

         4、三层结构的应用程序更能够适应企业级应用日益增长的复杂度和灵活性的要求,并且通过软件分层的高

              内聚、低耦合的原则,实现扩展、维护和重用的要求,可以大大提高开发效率。

四、总结

            学习三层,让我想到了之前的设计模式,都应用了高内聚、低耦合,适应了软件复杂性和灵活性的要求,

         实现软件的扩展、维护和重用。但是不能盲目分层,不应分层而分层不应模式而模式。       






评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值