抽象工厂模式
2016-03-17 15:41
302 查看
http://blog.jobbole.com/78067/
这个例子非常好,非常明白。
感觉抽象工厂模式的难点,在于如何分类,例如这样一个场景,还是打怪,现在有一个剑制造工厂和一个刀制造工厂,分别可以创建出木质和铁质的武器,
那么,是以木和铁作为标准进行分类抽象,还是以剑和刀作为抽象呢?
http://design-patterns.readthedocs.org/zh_CN/latest/creational_patterns/abstract_factory.html 文章说了:了解抽象工厂前要了解下面的东西
产品等级结构 :产品等级结构即产品的继承结构,如一个抽象类是电视机,其子类有海尔电视机、海信电视机、TCL电视机,则抽象电视机与具体品牌的电视机之间构成了一个产品等级结构,抽象电视机是父类,而具体品牌的电视机是其子类。
产品族 :在抽象工厂模式中,产品族是指由同一个工厂生产的,位于不同产品等级结构中的一组产品,如海尔电器工厂生产的海尔电视机、海尔电冰箱,海尔电视机位于电视机产品等级结构中,海尔电冰箱位于电冰箱产品等级结构中。
这个例子非常好,非常明白。
感觉抽象工厂模式的难点,在于如何分类,例如这样一个场景,还是打怪,现在有一个剑制造工厂和一个刀制造工厂,分别可以创建出木质和铁质的武器,
那么,是以木和铁作为标准进行分类抽象,还是以剑和刀作为抽象呢?
http://design-patterns.readthedocs.org/zh_CN/latest/creational_patterns/abstract_factory.html 文章说了:了解抽象工厂前要了解下面的东西
产品等级结构 :产品等级结构即产品的继承结构,如一个抽象类是电视机,其子类有海尔电视机、海信电视机、TCL电视机,则抽象电视机与具体品牌的电视机之间构成了一个产品等级结构,抽象电视机是父类,而具体品牌的电视机是其子类。
产品族 :在抽象工厂模式中,产品族是指由同一个工厂生产的,位于不同产品等级结构中的一组产品,如海尔电器工厂生产的海尔电视机、海尔电冰箱,海尔电视机位于电视机产品等级结构中,海尔电冰箱位于电冰箱产品等级结构中。
相关文章推荐
- web.xml 中的classpath
- Redis+Nginx+Tomcat实现Session共享
- 和solr的N天N夜(四)--增量、定时导入并检索数据
- UITableView刷新某一行或某一部分,并记录做项目时的一小心得
- mysql explain用法和结果的含义(转)
- 解决Genymotion出现Unable to load VirtualBox engine问题
- 一个http请求的详细过程
- 预编译之条件编译
- JAVA中单例模式的几种实现方式
- c# 操作Word
- 使用tcp+select实现客户端与客户端的通信
- JAVA对excel文件的处理方式
- 利用ScheduledThreadPoolExecutor定时执行任务
- Parcelable encountered ClassNotFoundException reading a Serializable object bug解析
- IBM DB2的认证信息
- yum安装
- LeetCode160. Intersection of Two Linked Lists
- 插件描述:解决IE下不支持placeholder属性可以根据自己的需要去扩展.
- 【C/C++语法】C++ 虚函数表解析
- Apache Spark Jobs 性能调优(一)