软件体系结构解读_软件体系结构的分析
软件体系结构解读由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“软件体系结构的分析”。
创建型模式
1、工厂方法模式
工厂方法模式包含如下角色: i.Product:抽象产品 ii.ConcreteProduct:具体产品 iii.Factory:抽象工厂 iv.ConcreteFactory:具体工厂 结构图:
ProductFactory+factoryMethod(): Product...ConcreteProduct>ConcreteFactory+factoryMethod(): Product...return new ConcreteProduct();时序图:
2、抽象工厂模式
抽象工厂模式包含如下角色: i.AbstractFactory:抽象工厂 ii.ConcreteFactory:具体工厂 iii.AbstractProduct:抽象产品 iv.Product:具体产品 结构图:
时序图:
3、单例模式
单例模式包含如下角色: i.Singleton:单例 结构图:
Singleton-instance: Singleton-Singleton()+getInstance(): Singleton...if(instance==null)instance=new Singleton();return instance;instance 时序图:
结构型模式
4、组合模式
组合模式包含如下角色: i.Component: 抽象构件 ii.Leaf: 叶子构件 iii.Composite: 容器构件 iv.Client: 客户类
结构图:
ComponentClient++++operation()add(Component c)remove(Component c)getChild(int i)...Leaf+operation()...for(Component child:children){ child.operation();}++++Compositeoperation()add(Component c)remove(Component c)getChild(int i)...children 时序图:
5、外观模式 外观模式包含如下角色: i.Facade: 外观角色 ii.SubSystem:子系统角色 结构图:
ClientFacadeSubSystemASubSystemBSubSystemC
时序图:
6、适配器模式
适配器模式包含如下角色: i.Target:目标抽象类 ii.Adapter:适配器类 iii.Adaptee:适配者类 iv.Client:客户类
结构图:类适配器
ClientTarget+request()...Adaptee+specificRequest()...Adapter+request()...specificRequest();对象适配器: ClientTarget+request()...Adaptee+specificRequest()...Adapter+request()...adapteeadaptee.specificRequest();时序图:
7、代理模式
代理模式包含如下角色: i.Subject: 抽象主题角色 ii.Proxy: 代理主题角色 iii.RealSubject: 真实主题角色
结构图:
Subject+request()...ClientProxy-realSubject: RealSubject+preRequest()+request()+postRequest()...preRequest();realSubject.request();postRequest();RealSubjectrealSubject+request()...时序图:
行为型模式
8、迭代器模式
迭代器模式包含如下角色: i.Iterator: 抽象迭代器 ii.ConcreteIterator: 具体迭代器 iii.Aggregate: 抽象聚合类 iv.ConcreteAggregate: 具体聚合类 结构图:
IteratorAggregate+createIterator()++++first()next()hasNext()currentItem()ConcreteIteratorConcreteAggregate+createIterator()...++++first()next()hasNext()currentItem()时序图:
9、观察者模式
观察者模式包含如下角色: i.Subject: 目标 ii.ConcreteSubject: 具体目标 iii.Observer: 观察者 iv.ConcreteObserver: 具体观察者 结构图:
时序图:
10、命令模式 命令模式包含如下角色: i.Command: 抽象命令类 ii.ConcreteCommand: 具体命令类 iii.Invoker: 调用者 iv.Receiver: 接收者 v.Client:客户类
结构图:
InvokerCommand+execute()...ClientReceiver+action()...ConcreteCommandreceiver-state: +execute()...receiver.action();时序图:
11、策略模式
策略模式包含如下角色: i.Context: 环境类 ii.Strategy: 抽象策略类 iii.ConcreteStrategy: 具体策略类
结构图:
Context-strategy: Strategy+algorithm().........strategy.algorithm();......strategyStrategy{abstract} +algorithm()...ConcreteStrategyA+algorithm()...ConcreteStrategyB+algorithm()...时序图:
读书的好处
1、行万里路,读万卷书。
2、书山有路勤为径,学海无涯苦作舟。
3、读书破万卷,下笔如有神。
4、我所学到的任何有价值的知识都是由自学中得来的。——达尔文
5、少壮不努力,老大徒悲伤。
6、黑发不知勤学早,白首方悔读书迟。——颜真卿
7、宝剑锋从磨砺出,梅花香自苦寒来。
8、读书要三到:心到、眼到、口到
9、玉不琢、不成器,人不学、不知义。
10、一日无书,百事荒废。——陈寿
11、书是人类进步的阶梯。
12、一日不读口生,一日不写手生。
13、我扑在书上,就像饥饿的人扑在面包上。——高尔基
14、书到用时方恨少、事非经过不知难。——陆游
15、读一本好书,就如同和一个高尚的人在交谈——歌德
16、读一切好书,就是和许多高尚的人谈话。——笛卡儿
17、学习永远不晚。——高尔基
18、少而好学,如日出之阳;壮而好学,如日中之光;志而好学,如炳烛之光。——刘向
19、学而不思则惘,思而不学则殆。——孔子
20、读书给人以快乐、给人以光彩、给人以才干。——培根