大话设计模式笔记
简单工厂模式
活字印刷,目的可维护,可复用,可扩展,灵活性好
面向对象的好处,通过封装,继承,多态降低耦合度,达到活字印刷的效果。
UML类图
依赖,最弱的一种关系。 例如用在参数传递。
关联,组合,聚合
策略模式
策略模式用来封装算法
单一职责
就一个类而言,应该仅有一个引起它变化的原因。
如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能削弱或抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,发生变化时会发生意想不到的破坏。
软件设计真正要做的许多内容,就是发现职责并把这些职责互相分离。
开发封闭原则
软件实体(类,模块,函数)应该可以扩展,但不可以修改
扩展是开放的,更改是封闭的。