阅读笔记13

  • 软件架构的基本设计原则

  • 满足功能性需求和非功能需求:这是一个软件系统最基本的要求,也是架构设计时应该遵循的最基本的原则。
  • 实用性原则:就像每一个软件系统交付给用户使用时必须实用,能解决用户的问题一样,架构设计也必须实用,否则就会“高来高去”或“过度设计”。
  • 接口复用:公共部分可设计成接口,减少冗余,最大程度的提高开发人员的工作效率。
  • 低耦合:耦合是描述模块之间的依赖程度,如果一个模块的修改,都有另一个模块会受到影响,则两模块之间是相互依赖耦合的。(依赖具有传递性,耦合的两个模块可能间接依赖),低耦合是我们的设计目的,但不是不可以存在耦合不存依赖,依赖是必须的,因为模块之间是必须要通信交互。设计依赖应该依赖于不变或者不易变的接口,无需了解模块的具体实现,即为面向对象的封装性。
  • 高内聚:高内聚是指某个特定模块包括程序、类型都应完成一系列相关功能,描述了不同程序和类型中方法,方法中不同操作描述的逻辑之间的距离相近。高内聚意味可维护性,可重塑性,因为模块对外部的依赖少(功能的完备性)。如果两个模块之间的修改,互不影响各个模块的业务,这说明模块之间是高内聚的。模块的内聚和其担当的职责成反比,即模块的职责越多,模块的内聚性越低,这也是模块的单一原则(SRP),SRP提倡每个类型都最好只承担单一的职责,只有单一的改变因素。
原文地址:https://www.cnblogs.com/youknownothing/p/11004495.html