[设计模式]抽象工厂
[设计模式]抽象工厂
1. 抽象工厂模式与工厂模式的区别
工厂模式解决的是单个对象的工作,其并不是依赖的;而抽象工厂模式是解决一系列的相互依赖问题。
其很简单,即一个工厂可以创建一系列相互配到的对象。
举个例子,MySql有一系列Connect类,Command类等,同样oracle也有一系列,一旦你换数据库,这一些你都应该改变。
如果你采用传统的,则必须建立很多份工厂,麻烦是一方面,并且在使用时必须注意相互对应,一旦不对应就会引发错误。
因此,使用一个工厂来创建全部需要的对象是非常必要且方便的。
2. 其实,其改名为“家族工厂”更好,但是这么约定了,也不知道为什么它叫“抽象工厂”。
代码就不用写了,这个其实本质很容易理解的。