您的位置:首页 > 其它

各种设计模式分析

2011-11-12 12:01 190 查看
简单工厂模式:通过工厂类对业务逻辑选择封装化,把业务逻辑封装到工厂方法中.优点是使业务逻辑和业务实现真正 分离.缺点是扩展起来非常不方便.需要修改原来的工厂实现代码。试用于业务比较多,但是变化比较小的情况

抽象工厂模式:通过抽象工厂,对比起来,他可以轻易加载返回的业务类。且可以对返回类抽象化.实现业务类很多,且方法类型也很多.但是用户需求有变化的时候修改的地方太多,(抽象类,实现工厂类,抽象工厂类)如果和反射一起用的话,适合类变化,方法变化比较大的情况.

工厂方法模式:通过调用的方法不同,实现多态,优点是扩展起来比较方便.但是需要用户自己判断实现哪个工厂类,这样用户端存在一定的义务逻辑.试用于变化比较多的情况.

装饰模式:把一个类封装成他的属性,可以重复实现统一个迭带调用封装类的Function.优点是

不考虑具体实现对象数量多少,实现多态.适用于可能重复加载业务的情况.

代理模式:由一个类封装到另一个类里面,通过调用另一个类的业务逻辑,实现代理.且实现业务逻辑.

状态模式:把状态封装到对象属性里面.通过不断实例化新的状态,实现状态的改变.用于状态变化比较大的情况。

策列模式:把类封装成属性,面向接口编程,可以实现多态.适用于策列经常有变化但是实现方式变化不多的情况.

模板模式:由模板实现通用逻辑,通过继承,多态具体实现.适用于重复劳动很多的情况.

外观模式:

建造者模式:把业务逻辑实现整理在一个大的Function里面,这样可以把多个复杂的业务逻辑封装起来。

观察者模式:把一个集合类封装到他属性里面.通过多态实现集合类的太态.适用于变化比较大的属性里面.

适配器模式:把一个类封装到另一个类里面。一般用于一些类无法直接继承一个借口或是抽象类里面.

备忘录模式:把一个类的属性保存起来,在必要的时候可以还原类.适用于需要保存和还原类的情况.

组合模式:把集合类封装成类的属性,这样可一把类写成一个树形结构的数据链.用于结构层次感很强的情况.

迭代器模式:把所有集合类封装起来,通过属性控制返回你想要的迭代结果.

单例模式:通过静态方法的属性,用于只能实现一次的实例化.

桥接模式:把抽象类和实现部门分离.通过调用有关接口实现.

命令模式:首先抽象化命令,再把命令集合类放在操作者手中,通过调用抽象类的方法,实现多态.用于可以命令比较多的时候,同时所有命令的实现接口都相同时.

职责链模式:和状态模式比较相似,把责任当一个属性,通过更换属性来控制责任的选择.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: