摘要:
门面设计模式主要用在在一个大的系统中有多个子系统时,多个子系统会设计一个门面,把别的系统感兴趣的数据封闭起来,通过这个门面来进行访问 Facade SubSystemA SubSystemB Client 阅读全文
摘要:
Abstract(抽象模板):定义了完整的框架,方法的调用顺序通常已经确定,但是还会定义一些抽象的方法给子类实现 Concrete(具体模板实现类):实现抽象模板中定义的抽象方法,实现具体的功能,组成一个完整逻辑 AbstractTemplate ConcreteTemplateA Concrete 阅读全文
摘要:
Context:使用不同的策略的环境,它可以根据自身的条件选择不同的策略实现类来完成所要的操作。它持有一个策略实例的引用,创建具有策略对象的方法也可以由它完成 Strategy:抽象策略,定义每个策略都要实现的策略方法 Strategy ConcreteStrateA ConcreteStrateB 阅读全文
摘要:
观察者必须在主题中注册,然后主题才能将通知观察者 观察者模式通常包括下面几个角色: 1、Subject:抽象主题,它负责管理所有观察者的引用,定时定义主要的事件操作 2、ConcreteSubject 具体主题:它实现了抽象主题定义的所有接口,当自己发生变化时会通知所有观察者 3、Observer 阅读全文
摘要:
Target(目标接口):所要转换的所期待的接口 Adaptee(源角色):需要适配的接口 Adapter (适配器):将源接口适配成目标接口,继承源接口,实现目标接口 Adaptee Target Adapter ConcreteAdaptee Client 阅读全文
摘要:
Product:抽象产品角色,它定义了这个产品的通用属性,相当于模子,它定义了一些功能,这些功能可以由子类去实现 ConcreteProduct:具体产品角色,它实现了抽象产品所定义的功能,每个 ConcreteProduct 相当于一个产品种类 Factory:抽象工厂,它定义了所有工厂都应该具有 阅读全文