首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

哪位高手能够讲讲简单工厂模式和策略模式有什么本质区别

2011-11-24 
谁能够讲讲简单工厂模式和策略模式有什么本质区别?谁能够讲讲简单工厂模式和策略模式有什么本质区别?谢谢[

谁能够讲讲简单工厂模式和策略模式有什么本质区别?
谁能够讲讲简单工厂模式和策略模式有什么本质区别?
谢谢

[解决办法]
区别很大哦,前一个解决的问题是 对象的创建 

后一个封装一系列的算法 并使他们可以替换。
[解决办法]
前一个是创建模式,后一个是行为模式。
[解决办法]
策略模式:定义算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。
简单工厂:将对象的创建完全独立出来,让对象的创建和具体的使用客户无关。
简单工厂严格意义上不是一种设计模式,只能是一种良好的编程习惯。
[解决办法]
实际整个Strategy的核心部分就是抽象类的使用,使用Strategy模式可以在用户需要变化时,修改量很少,而且快速。

  Strategy和Factory有一定的类似,Strategy相对简单轻易理解:

  Strategy适合下列场合:

  1.以不同的格式保存文件;

  2.以不同的算法压缩文件;

  3.以不同的算法截获图象;

  4.以不同的格式输出同样数据的图形,比如曲线 或框图bar等。


[解决办法]
简单工厂侧重明确类的职责
策略侧重演示抽象类的使用
[解决办法]

探讨
策略模式:定义算法族,分别封装起来,让他们之间可以相互替换,此模式让算法的变化独立于使用算法的客户。
简单工厂:将对象的创建完全独立出来,让对象的创建和具体的使用客户无关。
简单工厂严格意义上不是一种设计模式,只能是一种良好的编程习惯。

热点排行