随笔分类 - 设计模式
欢迎大家讨论学习设计模式相关知识
摘要:定义 工厂模式是为创建对象提供接口,以便把创建对象的具体过程隔离起来,封装变化,提高创建的通用性。 分类 工厂模式包含以下三种分类: 简单工厂 工厂模式 抽象工厂 简单工厂 简单工厂又叫静态工厂方法(Static Factory Method),它是把产品的创建移到统一的工厂方法中去,而不是把产品创
阅读全文
摘要:定义允许一个对象在其状态改变时,改变它的行为。看起来对象似乎修改了它的类。解决问题State模式主要解决的是在开发中时常遇到的根据不同的状态需要进行不同的处理操作的问题。解决这种问题,最一般的方法是采用switch-case语句进 行处理的,这样会造成一个问题:分支过多,而且如果加入一个新的状态就需要对原来的代码进行编译。State模式采用了对这些不同的状态进行封装的方式处 理这类问题,当状态改变的时候进行处理然后再切换到另一种状态,也就是说把状态的切换责任交给了具体的状态类去负责.State模式与Strategy模式比较:State模式和 Strategy模式有很多相似的地方,需要说明的是两
阅读全文
摘要:定义观察者设计模式:观察者设计模式中包含一对多的依赖关系,让多个观察者同时关注某一主题,当这个主题的某一状态发生变化,会通知所有观察着对象,使观察者能够自动更新自身。解决问题观察者设计模式主要是以一种简单易行的方法而又灵活的方式解决一对多的通知问题。角色抽象主题(abstractSubject):保存一个观察者集合,可以增加与删除观察者对象,并能通知观察者对象。具体主题(Subject):继承抽象主题,拥有具体的主题状态。通知接口(INotify):观察着实现的通知到达时统一更新自身接口。观察者(ConcreateObserver):实现通知接口的具体类。类图实现代码[代码]运行结果
阅读全文
摘要:适配器设计模式是把一个类的接口转化成客户端期望的接口,从而使原本接口不匹配的两个类能一起工作。实际中这种场景很容易碰到,比如A类型手机充电器需要10V电压充电,B类型手机需要15V电压充电。A类型手机的充电器价格非常昂贵,而B类型的充电器价格低廉。市场就有可能出现把B型充电器转换成A型手机匹配的适配器。适配器设计模式有两种:类适配器:使用继承实现接口转换。实例适配器:使用组合实现接口转换。类适配器类图:类适配器设计的角色:源:被适配的类。目标:客户期望的接口.由于适配器需要继承源。所以目标必须是接口。适配器:把源接口转换成目标接口。适配器需要继承源。代码:using System;using
阅读全文
摘要:定义:装饰器设计模式以对客户端透明的方式扩展对象的功能,是继承关系的一个替代方案。不改变对象的情况下,动态增加其功能。• 需要扩展一个类的功能,或给一个类添加附加的成员。• 需要动态地给一个对象增加功能,这些功能可以再次动态的撤销• 需要增加由一些基本功能的排列组合二产生的非常大量的功能,从而使继承关系实现变得不现实。装饰器模式中的各个角色:• 抽象构件角色:给出抽象接口。规范被附加功能类型。• 具体构件角色:被附加功能的具体实现。• 装饰角色:持有被附加对象的实例,并实现抽象构件的接口规范(装饰角色实现抽象构件的目的就是为了具体装饰角色之间也可以相互修饰)。• 具体装饰角色:扩展具体构件的功
阅读全文

浙公网安备 33010602011771号