[3] [对象创建] ( 1 ) 工厂方法模式 Factory Method
总结
-
为什么需要工厂方法模式?
直接使用new会导致紧耦合,
所以需要一种创建对象的办法,
让代码保持开闭原则.
(用来替代直接NEW的)
-
如何做到的"替代直接NEW"?
工厂方法模式可以将创建行为延迟倒到子类,
从而实现一种扩展(而非更改)的策略,
较好地解决了这种紧耦合关系。
-
缺点?
工厂模式解决 "单个对象" 的需求变化.
缺点在于,要求创建方法/参数相同,
还有每次创建一个类,
就要创建一个对应的工厂.
C++例子
重构前

重构后

角色结构

浙公网安备 33010602011771号