• 分层架构的优缺点


    分层架构的好处:

    1. 分层架构的目的是通过 关注点分离 来降低 系统的复杂度。分层后 数据逻辑清晰,便于数据的开发和维护。

    2. 同时满足 单一职责、高内聚、低耦合

    3. 提高可 复用性 降低维护成本

    单一职责:每一层只负责一个职责,职责边界清晰,如持久层只负责数据查询和存储,领域层只负责处理业务逻辑。

    高内聚:分层是把相同的职责放在同一个层中,所有业务逻辑内聚在领域层。这样做有什么好处呢?试想一下假如业务逻辑分散在每一层,修改功能需要去各层修改,测试业务逻辑需要测试所有层的代码,这样增加了整个软件的复杂度和测试难度。

    低耦合:依赖关系非常简单,上层只能依赖于下层,没有循环依赖。

    可复用:某项能力可以复用给多个业务流程。比如持久层提供按照还款状态查询信用卡的服务,既可以给申请信用卡做判断使用,也可以给展示未还款信用卡使用。

    易维护:面对变更容易修改。把所有对外接口都放在对外接口层,一旦外部依赖的接口被修改,只需要改这个层的代码即可。

    以上这些既是分层的好处也是分层的原则,大家在分层时需要遵循以上原则,不恰当的分层会违背了分层架构的初衷。

    分层架构的缺点:

    分层架构也有几个缺点

    1. 开发成本高:因为多层分别承担各自的职责,增加功能需要在多个层增加代码,这样难免会增加开发成本。

    但是合理的 能力抽象 可以提高了 复用性,又能降低开发成本。

    2. 性能略低:业务流需要经过多层代码的处理,性能会有所消耗。

    3. 可扩展性低:因为上下层之间存在耦合度,所有有些功能变化可能涉及到多层的修改。

  • 相关阅读:
    Laravel框架一:原理机制篇
    Python2.7安装(win7)
    Oracle连接查询
    windows7-PowerDesigner 15.1 的安装图解
    Apache+php+mysql+SQLyog在windows7下的安装与配置图解
    windows7-SQLyog 安装图解
    4个mysql客户端工具的比较
    Windows7-32bit系统安装MySQL-5.5.39-win32.msi服务图解
    win7搭建web服务器
    win7下如何建立ftp服务器
  • 原文地址:https://www.cnblogs.com/chang09/p/16247895.html
Copyright © 2020-2023  润新知