java简单工厂与抽象工厂对比

简单工厂:

1、理解spring bean工厂基本上就理解了spring ioc了。
2、学东西先理脉络,再研究细节。
3、在实际工作中要把设计模式综合运用。
4、车的产生过程由自己确定,不由师父创建。
5、工厂就是生产产品,是靠自己生产产品,不是靠new;在里面可以做各种判断后再new车。
6、工厂里面用单利还是多例可以自己选择。
7、要替换方便就必须用多态,就要用父类和子类。
8、控制生成类型和生成过程

抽象工厂:

1、在jdk里面有很多getInstance()基本上都是静态的工厂方法。
2、在jdk里面有很多各种各样的Factory就是产生factory的工厂。
3、这个人不单开车,还拿的武器,还吃着苹果,这个人手里控制的产品很多。
4、问题是:控制系列产品的替换。
4、如果把1系列产品换车2系列产品,只需要换1系列产品的工厂换成2系列产品的工厂就可以,没必要替换所以的。
5、东西都new一遍,可以在配置文件里面修改一个地方就可以,换皮肤的功能类似抽象工厂,抽象工厂生产了。
6、一系列产品,可以批量换掉一系列产品,只需要换掉工厂。

抽象工厂和简单点工厂对比:

1、简单工厂来说是可以在产品这个维度扩展,在普通工厂里面产生产品系列,会很麻烦,产生不同的产品就要产生对应的工厂,导致工厂泛滥问题。
2、抽象工厂的问题:能换产品系列,但是能产生新的产品品种吗?修改的地方太多。
3、既能在产品系列和产品品种方面有好的解决方案:
比如:
spring bean工厂,new什么东西由配置文件来决定。

学习方法:

应用驱动学习

你可能感兴趣的:(java)