zoukankan      html  css  js  c++  java
  • 三层

    DAL

    DAL并不是用来根据业务需求而扩展的,它是用来控制你的数据库与OOP的映射机制的。如果你因为业务原因而需要写查询,这完全是BLL的功能。

    BLL

    逻辑层

    UI

    界面层

    MODEL

    数据库中的表,相当于给数据库表中每一列建立一个实体对象。

    优点:  

    1、开发人员可以只关注整个结构中的其中某一层;  2、可以很容易的用新的实现来替换原有层次的实现;
    3、可以降低层与层之间的依赖;
    4、有利于标准化;
    5、利于各层逻辑的复用。
    6、扩展性强。不同层负责不同的层面,如PetShop可经过简单的配置实现Sqlserver和oracle之间的转换,当然写好了也可以实现B/S与C/S之间的转换
    7、安全性高。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。
    8、项目结构更清楚,分工更明确,有利于后期的维护和升级

    高内聚,低耦合:内聚:一个模块内各个元素彼此结合的紧密程度;耦合:一个软件结构内不同模块之间互连程度的度量

    缺点:  

    1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。
    2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。

    数据访问层:这一层处于最底层,负责与数据库的交互,也称为DAL(Data  Access   Layer)。

    表示层:这一层直接和用户打交道,负责显示或获取数据,也称为UI层(User  Interface  Layer)。无论使用控制台还是Windows窗体显示数据,都是表示层的一种的应用。

    表示层依赖于数据访问层,两层职能分开,协助工作,其依赖关系。

     他们之间的调用关系是UI调用BLL,BLL调用DAL层。

  • 相关阅读:
    android 蓝牙串口通讯使用简介
    【C】C语言可变参va_start/va_arg/va_end使用说明
    【Codecs】CABAC深入分析与理解
    【Bugs】VS单步调试的无法进入断点、行号错乱等问题解决方法
    【SVAC1】NAL单元的封装
    【CV】傅里叶描绘子原理及应用简介
    【CV】骨架提取
    【SVAC】千目聚云:SVAC2.0已来 未来发展道路一片光明
    【Debug】当前不会命中断点,源代码与原始版本不同
    【Base】POE供电
  • 原文地址:https://www.cnblogs.com/dongyuhan/p/6677406.html
Copyright © 2011-2022 走看看