设计模式笔记

简单记一下方便需要的时候看

设计模式原则

总原则: 开闭原则--对扩展开放,对修改关闭

  1. 单一职责
  2. 里氏替换 -- 任何基类可以出现的地方,子类一定可以出现
  3. 依赖倒置 -- 依赖于抽象而不依赖于具体
  4. 接口隔离 -- 类间的依赖关系应该建立在最小的接口上
  5. 最少知道 -- 只和朋友交谈

首先要减少非必要的耦合(朋友的数量)

  1. 合成复用 -- 多用组合,少用继承

常见的设计模式

有用的链接:图说设计模式

创建型模式

越复杂的设计模式相对于简单的来说耦合肯定更少,但是最简单的情况下它们又有多少差别呢?

简单工厂模式

一个工厂类可以更具不同的参数创建不同的类,这些被创建的类有共同的父类,工厂类包含所有创建逻辑,也就是说如果有新的类加入需要修改工厂类.

工厂模式

一个抽象工厂类负责定义创建的接口,具体创建方法由工厂子类负责.相比于简单工厂模式如果有新的类要加入就不会修改某个具体类,更符合开闭原则,缺点就是会导致类的数量增加,每个增加一个类要增加一个对应的工厂类.

其实就是可以减少耦合的方式.

抽象工厂模式

我已经不想了解它们的区别和具体定义了, 知道他们是工厂模式就行, 工厂模式就是把创建使用给解耦

还是简单写下把,工厂模式是一个工厂类负责一个产品,抽象工厂模式是一个工厂类负责一簇产品

单例模式

确保一个类只有一个实例,通过提供一个全局接口实现.

结构型模式

适配器模式

将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。

行为型模式

观察者模式

目标提供 attach 和 detach, 观察者可以通过attach方法订阅通知,当目标状态发生变化目标会通知所有订阅者

posted @ 2024-05-06 15:59  天刚刚破晓  阅读(15)  评论(0)    收藏  举报