三层结构基础知识

【三层结构概述】
    物理划分:(硬件上的划分)显示层、业务层、数据层
    逻辑划分:UI/BLL(业务逻辑)+DAL(数据访问)/DB(我们讨论的三层)
    
【为什么要用三层】
    为了将客户显示、业务逻辑、数据访问分开

【什么情况下用三层】
    有DAL(数据访问)和BLL(业务逻辑)
   业务逻辑简单、没有真正的数据存储层(不需要三层)

【必备基础知识】
    1.业务逻辑层BLL(Business Logic Layer)
       BLL的作用:从DAL中获取数据,以供UI显示用;从UI中获取用户指令和数据,执行业务逻辑;从UI中获取用户指令和数据,通过DAL写入数据源。
       BLL的职责机制:UI->BLL->UI    ;    UI->BLL->DAL->BLL->UI。
    2.数据访问层DAL(Data Access Layer)
       DAL作用:数据源加载数据(Select)、向数据源写入数据(Insert/Update)、从数据源删除数据(Delete)     和数据源打交道。
       DAL中常用的技术:ADO.NET+SQL语句、o/R Mapping框架NHiberate、访问SQL Server数据库时Linq to SQL。
    3.界面层View/UI(User Interface)
       UI作用:向用户展现特定业务数据、采集用户的输入信息和操作。
       UI设计的原则:用户至上、兼顾简洁。
       UI中常用的技术:WindowsForm:Form、Control    ASP.NET: aspx、ascx、master、html。
    4.实体类Modal
       Modal作用:声明一些字符串并转换为属性供三层调用,使得总体逻辑更加简单明了。
    5.数据操作类DBHepler
       DBHepler作用:和增加Modal类类似,统一了DAL层中代码的风格和格式,方便维护。

【在具体项目中的应用】
    1.DAL只提供基本的数据访问,不包括任何业务相关的逻辑处理。
    2.UI只负责显示和采集用户操作,不包含任何的业务相关的逻辑处理。
    3.BLL负责处理业务逻辑,通过获取UI传来的操作指令,决定执行业务逻辑,再需要访问数据源的时候直接交给DAL处理,处理完成后,返回必要数据给UI。
    具体应用:
      1.DAL/BLL/UI分别在不同的程序集中,各个层之间的引用关系UI->BLL->DAL。
      2.DAL所在程序集不引用BLL和UI。
      3.BLL需要引用DAL。
      4.UI直接引用BLL,可能会间接引用DAL。

    特注:忌讳交叉引用,为了避免这个问题,出现了Model(实体);为了统一DAL层代码格式,出现了DBHelper(数据操作类)。

【感受】
    在学习三层的过程中一步一步去理解其中的结构,理解其中的逻辑,真正了解了之后并且具备对以上知识的深刻理解相信再敲代码的过程中会得心应手的,加油!
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 33
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 33
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

创业之路&下一个五年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值