小白谈谈23种设计模式

23种设计模式分类:

一、创建型模型(共五种):

  1. 单例模式
  2. 工厂方法模式
  3. 抽象工厂模式
  4. 建造者模式
  5. 原型模式

二、结构性模型(共七种):

  1. 享元模式
  2. 适配器模式
  3. 装饰模式
  4. 代理模式
  5. 门面模式
  6. 桥接模式
  7. 组合模式

三、行为型模型(共十一种):

  1. 策略模式
  2. 中介者模式
  3. 责任链模式
  4. 观察者模式
  5. 命令模式
  6. 备忘录模式
  7. 模板模式
  8. 状态模式
  9. 迭代器模式
  10. 访问者模式
  11. 解释器模式

面向对象的六大原则:

  1. 单一职责原则(SRP):一个类不要太大,负责单一的职责,高内聚,低耦合,如果一个类负责的职责太多,尽量把类进行拆分

  2. 开闭原则(OCP):对扩展开放,对修改关闭(尽量在不要修改原来的代码的情况下进行扩展),抽象化,多态是开闭原则的关键

  3. 里氏替换原则(LSP):所有使用父类的地方,必须能够透明地使用子类对象,通俗点说就是父类定义时,调用子类不会产生任何错误或者异常,子类必须完全实现父类的方法,子类可以有自己的方法和属性,覆盖或实现父类的方法时输入参数可以放大。

  4. 依赖倒置原则(DIP):依赖抽象,而不是依赖具体,面向接口编程

  5. 接口隔离原则(ISP):每个接口应该承担独立的角色,避免子类实现不需要的实现的方法,需要对客户提供接口的时候,只需要暴露最小的接口,比如说我定义一个动物的接口,定义了fly()和run()两个方法,这时我要创建一个dog的类,实现这个动物接口中的run方法,可是也要把fly方法也实现了,那就违背了接口隔离原则了。

  6. 迪米特法则(LoD):一个类对自己需要耦合或者调用的类应该知道得最少,一个类只需要知道调用类的public方法即可,调用类中的复杂逻辑无须知道。
发布了48 篇原创文章 · 获赞 0 · 访问量 648

猜你喜欢

转载自blog.csdn.net/weixin_44943485/article/details/105379882