面向对象设计七大原则学习

http://c.biancheng.net/view/1322.html

面向对象设计七大原则学习

  • 面向对象设计原则 -> OLDSILC
    • 开闭原则(Open Close Principle)
      • 含义
      • 实现
    • 里式替换原则(Liskov Substitution Principle)
      • 实现
    • 依赖倒置原则(Dependence Inversion Principle)
      • 含义
      • 实现
      • UML
    • 单一职责原则(Single Responsibility Principle)
      • 含义
      • 实现
      • UML
    • 接口隔离原则(Interface Segregation Principle)
      • 含义
      • 实现
      • UML
    • 迪米特法则(Law of Demeter) 最少知识原则(Least Knowledge Principle)
      • 含义
      • 实现
      • UML
    • 合成复用原则(Composite Reuse Principle)
      • 含义
      • 实现
      • UML

面向对象设计原则 -> OLDSILC

开闭原则(Open Close Principle)

含义

不要修改源码, 进行扩展功能。

实现

定义抽象父类进行约束, 封装具体实现类。

里式替换原则(Liskov Substitution Principle)

实现

子类不修改父类方法。

依赖倒置原则(Dependence Inversion Principle)

含义

面向接口编程。

实现

定义变量, 声明类型为接口或者抽象类。

UML

面向对象设计七大原则学习_第1张图片

单一职责原则(Single Responsibility Principle)

含义

一个类有且只有一个引起它变化的原因, 否则就拆分它。

实现

将类里面的不同职责进行分离, 再分装到不同的类或模块。

UML

面向对象设计七大原则学习_第2张图片

接口隔离原则(Interface Segregation Principle)

含义

一个类对另一个类的依赖应该建立在最小接口上。

实现

拆分接口。

UML

面向对象设计七大原则学习_第3张图片

迪米特法则(Law of Demeter) 最少知识原则(Least Knowledge Principle)

含义

如果两个类不需要直接通信, 那就不应该直接互相调用, 而通过中间类来转发该调用

实现

  1. 在类结构设计上, 降低类成员的访问权限
  2. 在类的设计上, 优先设置成不变类
  3. 降低引用其他类的次数
  4. 使用私有属性, 公有方法
  5. 谨慎 Serializable

UML

面向对象设计七大原则学习_第4张图片

合成复用原则(Composite Reuse Principle)

含义

软件复用时, 使用组合或者聚合等关联关系, 其次才考虑使用继承关系。

实现

将已有的对象纳入新对象中, 作为新对象的成员对象来实现。

UML

面向对象设计七大原则学习_第5张图片
面向对象设计七大原则学习_第6张图片

你可能感兴趣的:(开发基础)