设计原则

软件构建目标

  • 改动
  • 理解
  • 复用

SRP:单一职责原则

任何一个软件模块都应只对某一类行为负责

主要讨论的是函数与类的关系

OCP:开闭原则

设计良好的软件应该容易扩展,而禁止修改

  • 将旧代码的修改量降低至最小

依赖方向的控制

通过接口来反转组件之间的依赖关系,使得高阶组件不会因低阶组件被修改而受到影响

信息隐藏

通过中间层使高层组件不过度依赖低层组件的内部细节

LSP:里氏替换原则

一个软件实体如果使用的是一个基类的话,那么一定适用于其子类,而且它根本不能察觉出基类对象和子类对象的区别

  • 是一个指导接口与其实现方式的设计原则

ISP:接口隔离原则

对模块来说,跟它无关的接口一旦发生变更,应该不能影响到该模块

  • 软件设计如果依赖了它并不需要的东西,会带来麻烦

DIP:依赖反转原则

想要设计一个灵活的系统,则就应多引用抽象类型,而非具体实现

主要关注的是系统中那些经常变动的

results matching " "

No results matching " "

results matching " "

No results matching " "