本文已参与「新人创作礼」活动,一起开启掘金创作之路。
23种设计模式
在学习设计模式的时候,发现有23种之多。记忆起来十分困难,所以编一个顺口溜是不错的方法。当然死记还是不够的,但是要记死,重在理解和灵活运用。
迪厅里开口赖单
三厂建造单原型
组装适代享外桥
迭代策略告命状
观模忘访责中解
原则:迪米特法则,里氏替换法则,开放封闭法则,接口隔离法则,依赖倒置法则,单一职责法则
三厂:简单工厂,工厂方法,抽象工厂模式。建造者模式。单例模式,原型模式。5个 简单工厂不算
组合模式;装饰器模式;适配器模式;代理模式;享元模式;外观模式;桥接模式。7个
迭代器模式;策略模式;命令模式;状态模式。4个
观察者模式;模板方法模式;备忘录模式;访问者模式;责任链模式;中介者模式;解释器模式。7个
观察这些模式,其实是引入接口后,在处理对象,或者说类之间的关系。
1.构建型 是在看如何构造对象,在哪里构造对象,如何缓存对象,比如对象池。
2.结构型可以看作是如何组织对象形成数据结构。
3.行为型主要封装了一些逻辑处理流程,可以看作是算法封装。
对象与对象之间的关系
A继承B.
A中包含1个B.
A中包含多个B.
A引用B. A和B相互引用。
A的构建器方法参数中包含了B.
A的普通成员方法参数中包含了B.
还能找到其他的两个对象交互的方法吗?以上本质都是对象之间的耦合。
A可以能过消息队列C访问B. 这种A和B不是紧耦合。但是此处涉及到了A,B,C的三元关系。我们拆分成A与C,C与B两个二元关系看待。