小妹--简单工厂模式
简单小妹收拾衣服还是很有一套的,虽然算不上23个模式之一,但是运用也十分广泛。
她的所有衣服是一个大类(父类),然后将其分为四类(子类):初夏秋冬,每个季节的模块都标明季节名,方便快速拿(工厂)不同季节的衣服。
关系如下图:
在我们看来小妹已经做得很不错了,但是如果我们想要再添加一个介于春天和冬天穿的衣服的类,那么工厂就必须做出相应的修改了,这是就违背了我的开放-封闭原则,那该怎么办呢?可是聪颖的大姐就把这个问题解决了,看来不白年长几岁,经验就是多!
大姐--工厂方法模式
在小妹整理关系的基础上,工厂大姐给每个季节的衣服都增加了一个工厂,这样再增加类,只需要增加相应的工厂就OK了,开放-封闭原则也不会违背啦!
各个关系如下图:
大姐大--抽象工厂模式
在家中,如果老爸不爱收拾衣服的话那妈妈就要帮他收拾了,这时如果抽象大姐大再用上面的方法就又会显得乱了一些,可是大姐大总是能想出解决办法,点赞!
各种关系如下图:
发现问题和解决问题的无缝连接就是如此,承担的责任越大的时候需要考虑的也就越多,但是与此同时,进步也就越大!最后一张图来总结一下工厂三姐妹之间的关系!