简单工厂模式(simple factory pattern)
与一个对象相关的职责通常有3类:
1、对象本身所具有的职责(对象自身所具有的数据和行为)
2、创建对象的职责
3、使用对象的职责;
简单工厂模式的缺点:
1、简单工厂集中了所有产品的创建逻辑,职责过重
2、系统扩展困难,一旦添加新产品不得不修改工厂逻辑,在产品类型较多时,有可能造成工厂逻辑过于复杂,不利于系统的扩展和维护
严重违反“开闭原则”(Open-closed princple)
简单工厂模式的优点:
1、对象创建和使用分离,客户端免除直接创建产品对象的职责,而仅“消费”产品;
2、客户端只需传入相应的参数即可获得相应的产品;
3、将产品的创建限定在一个静态方法中,避免代码散落趋势蔓延;