小识三层

是什么:

         三层架构(3-tier architecture) 通常意义上的三层架构就是将整个业务应用划分为:表现层(Presentation layer)、业务逻辑层(Business Logic Layer)、数据访问层(Data access layer)。区分层次的目的即为了“高内聚低耦合”的思想。在软件体系架构设计中,分层式结构是最常见,也是最重要的一种结构。——来自百度百科
     初了解三层,我第一想到的例子是:医生(动手术)、助理、器具储物柜。:医生提出用哪把刀,助理根据医生的要求,在盘中拿相应的器具。
     但看了些博客:举的是顾客、厨师、采购员的例子。这和我的例子有些冲突:我的储物柜(DAL)是死的,不能做判断思考,但采购员是可以思考的。
     我本以为:DAL层是全根据BLL层支配的,但其实DAL层也是有自己的判断的。所以,觉得顾客,厨师,采购员的例子更贴切。

   表示层(UI)
     向用户展现特定业务数据、采集用户的输入信息和操作。原则:用户至上、兼顾简洁
   业务逻辑层(BLL)
     从DAL中获取数据,以供UI显示用
     从UI中获取用户指令和数据,执行业务逻辑
     从UI中获取用户指令和数据,通过DAL写入数据源

   数据访问层(DAL)
     从数据源加载数据(Select)
     从数据源写入数据(Insert/Update)
     从数据源删除数据(Delete)

如何用:


     业务、数据复杂到一定程度,才用三层。
   应用原则:
     UI:只负责显示和采集用户操作,不包含任何的业务相关的逻辑处理。
     BLL:负责处理业务逻辑。通过获取UI传来的操作指令,决定执行业务逻辑,在需要访问数据源的时候直接交给DAL处理。处理完成后,返回必要数据给UI.

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


   引用原则:

     DAL不引用BLL和UI;

     BLL需要引用DAL;

     UI直接引用BLL,可能间接引用DAL;

     避免互相引用。

                  即:


    职责机制:
     UI--->BLL---->UI(用户发出请求,经处理,对数据库进行处理)

     UI---->BLL--->DAL---->BLL--->UI(用户发出请求,经处理,对数据库进行处理
后,需在经处理给用户一个反馈)

总结:

     三层各司其职,信息顺序传递。BLL层起着承上启下的作用,根据UI的请求,让DAL在数据库调取、处理相应的数据,必要的情况下,再将数据传给UI,显示给用户。总言之:三层架构目的:也是解耦和......




评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值