本文最后更新于 1259 天前,其中的信息可能已经有所发展或是发生改变。
简单工厂模式,虽然不在23种设计模式中。但是可以认为是工厂模式的一种特殊实现,并且在日常中使用广泛,所以还是值得我们去学习的。
解释
- 简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,是一种创建型的设计模式,关注于实例对象创建。
- 由一个工厂对象通过判断传入的参数,决定创建出哪一种产品类的实例,将创建的细节透明化
优点:
- 一个调用者想创建一个对象,只要知道其名称就可以了
- 扩展性高,如果想增加一个产品,只要扩展一个工厂类就可以。 3、屏蔽产品的具体实现,调用者只关心产品的接口
缺点:
工厂类的职责相对过重,增加新的产品需要修改工厂类的判断逻辑,违背开闭原则,如果产品数量过多,维护将变得非常困难。
列子实现:
模拟场景:
现在汽车品牌千千万…我才不知你要那辆…
UML图:
基础的汽车类:
宝马:
奔驰:
汽车简单工厂类:
测试及其结果:
汽车简单工厂类-switch:
总感觉每次if都不怎么优雅好看,换个switch看看效果…