工厂模式:简单工厂模式,工厂方法模式,抽象工厂模式
工厂模式 :
由一个静态方法根据传入的不同值返回相应类的一个接口(向上转型)体现了设计模式的依赖于抽象而不依赖于具体的思想;不符合开闭原则(添加类需要修改工厂的方法)
简单工厂模式:
个人觉得,是把产品的生成具体到了每一个工厂,基本上一个工厂负责一个产品。符合迪米特法则,依赖于倒转,开闭原则(添加产品不需要修改任何类,只需添加产品和对应的工厂类即可),这个也是比工厂模式优秀的地方。
抽象工厂模式:
用了10个类才把问题讲清楚,挺复杂的。可以简单的理解为 box(BOXWin,BOXLINUX),Button(BtnWin,BtnLinux)
制造工厂要返回一套产品 win(BOXwin,BtnWin) Linux(BOXLinux,BtnLinux) -->PLAT(BOX,BUTTON);
客户端 调用工厂,进行box和button 的操作即可。
该方法适合封装成套的产品,但是不符合开闭原则(要添加label怎么办,Factory都要修改)
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/15116811/viewspace-438685/ ,如需转载,请注明出处,否则将追究法律责任。