【框架学习】三层学习

       看了很多关于三层的博客,感觉还是理解得不是很到位,边学边总结,先谈谈我对三层的理解。

一、三层是什么

       这里的三层当然指的是逻辑上的三层,将整个业务应用分为:用户层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。

二、为什么要分层

       1、分工明确。机房第一遍的时候就会考虑这样的问题:这段代码在这个窗体可以用,在那个窗体也可以用,那到底该分在哪里。其实这个问题就是分工不明确造成的,第一遍那是相当的混乱。现在看看,真是不忍直视。当初还觉得自个儿做的挺不错的,真是汗颜啊。

        2、降低耦合。解耦的作用就不用我说了,降低各层的依赖,利于排错,利于变动,利于维护。

        3、让结构清晰,便于开发人员对系统整体的把握和理解。

三、三层是干什么

         先来看一张图。

【用户层UI(User Interface)】

1、作用:①向用户展现特定业务数据。②采集用户的输入信息和操作。③特定的数据显示给用户。

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

【数据访问层DAL(Data Access Layer)】

1、作用:①从数据库加载数据。②向数据库写入数据。③从数据库删除数据。

2、原则:只提供基本的数据访问,不包含任何的业务逻辑。

【业务逻辑层BLL(Business Logic Layer)】

1、作用:①从DAL中获取数据,供UI显示。②从UI中获取用户指令和数据,执行业务逻辑。③从UI中获取用户指令和数据,通过DAL写入数据源。

2、原则:负责处理业务逻辑。通过调用UI传来的用户指令,执行业务逻辑,在需要访问数据库的时候,直接交给DAL进行处理。处理完成后,返回必要数据或提示给UI。

四、三层的优缺点(来自百度百科)

【优点】

①无需开发客户端软件,维护和升级方便。②可跨平台操作。③具有良好的开放性和可扩充性。④便于数据库移植。⑤安全性好。⑥资源重用性好。

【缺点】

有时会导致级联的修改。

 五、小结

     三层分为UI层、BLL层、DAL层。用户层UI只能调用业务层BLL,数据层DAL只能对数据库进行操作,其他的工作属于业务层。实体层供各层调用。各层分工明确,便于后期的升级和维护。

评论 21
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值