设计模式


创建型设计模式 结构型设计模式 行为型设计模式 其他设计模式

单一职责原则


单一职责原则,就是对一个类而言,应该仅有一个引起它变化的原因,其实就是将这个类的指责单一化。

如果一个类的职责过多,就等于把这些类的职责耦合到了一起,这样的耦合会导致设计变得脆弱,当变化发生时,设计会遭受意想不到的破坏。

开闭原则


对一个类的扩展开放,对修改封闭。

一种理想的设计模式,但是这样能够对设计的模块在哪个位置了然于胸。

在封装一个类时最好预留一些接口。

开放封闭原则是面向对象设计的核心所在,这给我们设计的程序带来巨大的好处,时期可维护性,可扩展性,可复用性,灵活性更好。

依赖倒转原则


定义:

  • 高级模块不应依赖于低级模块,两个都应该依赖于抽象。
  • 抽象不应该依赖于细节,细节应该依赖抽象
  • 高层模块:上层应用,业务层实现
  • 底层模块:可以理解为底层接口,如封装好的api,动态库等
  • 抽象:抽象类

里氏代换原则

子类类型必须能够替换他们的父类类型。

这个原则的满足条件第一个就是继承,其次还要实现子类基层的所有父类的成员函数和属性都是合理的。

title:Example
collapse:open
哺乳动物都是胎生,但有一种存在就是鸭嘴兽,虽然是哺乳动物,但是是卵生。
 
根据里氏代换原则,鸭嘴兽不能继承哺乳动物类,他是一个异类。

总结

Summary

软件设计真正的要做的事,就是根据需求发现职责,并把职责分离,添加新的类,给当前类减负,越是这样的项目越容易维护。