设计模式design patterns

导读

设计模式,指在软件设计中,被反复使用的一种设计经验。参考wiki:java教程-设计模式

设计模式这个术语是上个世纪90年代由Erich Gamma、Richard Helm、Raplh Johnson和Jonhn Vlissides四个人总结提炼出来的,并且写了一本Design Patterns的书。这四人也被称为四人帮(GoF)。为什么要使用设计模式?根本原因还是软件开发要实现可维护、可扩展,就必须尽量复用代码,并且降低代码的耦合度。设计模式主要是基于OOP编程提炼的,它基于以下几个原则:

开闭原则

由Bertrand Meyer提出的开闭原则(Open Closed Principle)是指,软件应该对扩展开放,而对修改关闭。这里的意思是在增加新功能的时候,能不改代码就尽量不要改,如果只增加代码就完成了新功能,那是最好的。

里氏替换原则

里氏替换原则是Barbara Liskov提出的,这是一种面向对象的设计原则,即如果我们调用一个父类的方法可以成功,那么替换成子类调用也应该完全可以运行。

 

学习设计模式,关键是学习设计思想,不能简单地生搬硬套,也不能为了使用设计模式而过度设计,要合理平衡设计的复杂度和灵活性,并意识到设计模式也并不是万能的。

GoF把23个常用模式分为创建型模式、结构型模式和行为型模式三类。

分类

创建型模式(5)

  • 工厂方法 
  • 抽象工厂
  • 生成器
  • 原型
  • 单例

结构型模式(7)

  • 适配器
  • 桥接
  • 组合
  • 装饰器
  • 外观
  • 享元
  • 代理

行为型模式(11)

  • 责任链
  • 命令
  • 解释器
  • 迭代器
  • 中介
  • 备忘录
  • 观察者
  • 状态
  • 策略
  • 模板方法
  • 访问者

 

posted @ 2022-04-03 11:31  明知道  阅读(63)  评论(0)    收藏  举报