知识卡片

工厂方法模式同时践行三大设计原则

普通读书笔记卡 · 1853.a.1

内容

[[工厂方法模式的定义与命令简化原理]]带来四点收益:良好封装性(调用者不必了解创建过程); 优秀扩展性(新增产品只需新增类);屏蔽产品实现(接口不变则上层不受影响,如切换JDBC 驱动);同时符合[[迪米特法则的定义]]、[[依赖倒置原则的三层含义与Java体现]]与 [[里氏替换原则的两种定义]]三条原则。发散:模式是对已有原则的落地封装,不是凭空发明的技巧。

参考来源

- 位置:《设计模式之禅(第2版)》第8章《工厂方法模式》(源文件:_epub-src/text/part0035.html) - 结论依据:原文分四点列出工厂方法模式的优点,其中最后一点明确对照了迪米特法则、依赖倒置原则、里氏替换原则三条原则分别如何在该模式中体现。 - 原始内容:工厂方法模式是典型的解耦框架。高层模块值需要知道产品的抽象类,其他的实现类都不用关心,符合迪米特法则……也符合依赖倒置原则,只依赖产品类的抽象;当然也符合里氏替换原则,使用产品子类替换产品父类,没问题!