相似设计模式的区别
2014-05-27 13:10
225 查看
1、建造者模式与抽象工厂模式
建造者:负责设计实体的普通属性,返回值为建站的对象。如建造的是个人,那么建造者模式就是负责设定人的发型、衣着、、身材等属性。详情见建造者模式
抽象工厂模式:既然是工厂,那么工厂里面的生产的都是实体了,就是说抽象工厂的属性都是对象。如玩具工厂可以有叮当猫、阿狸等对象,详情见抽象工厂模式
2、桥接模式与装饰器模式
两者都可以处理多维度问题,但桥接模式是每个维度有冲突,每个维度只能取一个值构成对象,而装饰器模式中作为装饰器的维度可以取0个或多个值,如:
桥接模式:维度一:毛笔类型,对象有大号毛笔、中号毛笔、小号毛笔;维度二:颜色,对象有红色、蓝色、黑色。每个维度只能取一个值,可以是大号黑色毛笔,小号红色毛笔,没有一只毛笔既是大号,又是小号的,详情桥接模式
装饰器模式:维度一:咖啡类型,对象有蓝山咖啡、摩卡咖啡等,维度二:配料,对象有方糖、牛奶等,一杯咖啡既可以加糖,也可以加牛奶异或是两者都加,所以维度二中的对象作为维度一中对象的装饰品。详情装饰器模式
建造者:负责设计实体的普通属性,返回值为建站的对象。如建造的是个人,那么建造者模式就是负责设定人的发型、衣着、、身材等属性。详情见建造者模式
抽象工厂模式:既然是工厂,那么工厂里面的生产的都是实体了,就是说抽象工厂的属性都是对象。如玩具工厂可以有叮当猫、阿狸等对象,详情见抽象工厂模式
2、桥接模式与装饰器模式
两者都可以处理多维度问题,但桥接模式是每个维度有冲突,每个维度只能取一个值构成对象,而装饰器模式中作为装饰器的维度可以取0个或多个值,如:
桥接模式:维度一:毛笔类型,对象有大号毛笔、中号毛笔、小号毛笔;维度二:颜色,对象有红色、蓝色、黑色。每个维度只能取一个值,可以是大号黑色毛笔,小号红色毛笔,没有一只毛笔既是大号,又是小号的,详情桥接模式
装饰器模式:维度一:咖啡类型,对象有蓝山咖啡、摩卡咖啡等,维度二:配料,对象有方糖、牛奶等,一杯咖啡既可以加糖,也可以加牛奶异或是两者都加,所以维度二中的对象作为维度一中对象的装饰品。详情装饰器模式
相关文章推荐
- 那些相似的设计模式的区别
- GOF设计模式学习笔记 --辨析各种模式的要点和相似模式之间的区别
- GOF设计模式学习笔记 --辨析各种模式的要点和相似模式之间的区别
- 各相似设计模式间的区别(不定期更新)
- 四种很相似的设计模式(State,Strategy,Bridge,Visitor)的区别
- GOF设计模式学习--辨析各种模式的要点和相似模式之间的区别
- 关于相似设计模式之间的区别
- 四种很相似的设计模式(State,Strategy,Bridge,Visitor)的区别
- 设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
- JAVA设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
- 设计模式之模板方法和策略模式的区别(二)
- 设计模式之-单例模式(Singleton)及java中==与equals的区别
- 设计模式:简单工厂、工厂方法、抽象工厂之小结与区别
- 从设计模式看抽象类与接口的区别
- 设计模式跟框架的有什么区别
- 设计模式简单学习(1)--虚方法(virtual)和抽象方法(abstract)的区别
- 设计模式学习之策略模式和简单工厂模式的区别和联系
- 设计模式之CS和BS结构的区别
- 设计模式之模板方法和策略模式的区别(一)
- 设计模式和框架的区别