10种常见设计模式UML图
2022-03-20 21:21:20 21 举报
1. 创建型模式:用于描述对象的创建过程,包括工厂方法、抽象工厂、单例、建造者、原型等。 2. 结构型模式:用于描述对象之间的关系和组合方式,包括适配器、桥接、组合、装饰、外观、享元等。 3. 行为型模式:用于描述对象之间的交互和职责分配,包括责任链、命令、解释器、迭代器、中介者、备忘录、观察者、状态、策略、模板方法、访问者等。 4. UML图:用于可视化展示软件系统的结构和设计,包括类图、时序图、用例图、活动图、组件图、部署图等。
作者其他创作
大纲/内容
实现
before() realSubject.request() after()
关联 IObserver
ConcreteTemplateB
+ step3():void+ isStep3():boolean
被装饰对象
代理模式(静态代理)
ConcreteProductA
+ doSometing:void
依赖
ITarget<<Interface>>
+ request():void
adaptee.specificRequest()
Proxy
+ before():void+ request():void+ after():void
工厂方法
单例(静态内部类方式 IODH)
component.operation()
ConcreteSubject
- observers:List<IObserver<E>>
+ attach(IObserver E obs):boolean+ detach(IObserver E obs):boolean+ notify(E event):void
定义被装饰者的行为
关联 Adaptee
简单工厂(不属于23种中的一种)
门面模式
ConcreteProductB
ConcreteComponent
+ operation():void
Adapter
观察者模式
ConcreteDecoratorB
- operationFirst():void+ operation():void- operationLast():void
MethodFactoryA
+ getProduct(name):IProduct
IProduct<<Interface>>
适配器模式
SubSystemA
+ methodA:void
strategy.algorithm()
模版方法
Decorator<<abstract>>
SubSystemC
+ methodC:void
MethodFactoryB
ConcreteStrategyA
+ algorithm():void
具体装饰类
定义处理观察者行为(抽象主题者)
Singleton
- static Holder:Singleton
+ getInstance():Singleton
ConcreteDecoratorA
AbstractTemplate<<abstract>>
+ final templateMethod():void# abstract step1():void# step2():void# step3():void+ isStep3():boolean
RealSubject
ISubject<<Interface>>
Adaptee
+ specificRequest():void
IStrategy<<Interface>>
+ algorithm():void
+ step2():void
关联 RealSubject
ConcreteStrategyB
关联 IStrategy
Context
- strategy:IStrategy
ConcreteObserver
+ update(E event):void
SimpleFactory
Facade
- subSystemA:SubSystemA- subSystemB:SubSystemB- subSystemC:SubSystemC
+ method:void
IFactory<<Interface>>
+ getProduct:IProduct
SubSystemB
+ methodB:void
抽象装饰类
关联 IComponent
策略模式
IComponent<<Interface>>
创建
装饰者模式
ConcreteTemplateA
+ step1():void
IObserver<<Interface>>
抽象观察者
收藏
0 条评论
下一页