23种设计模式PPT合集解析
* * * * * * * * * * * * * * * * * * * 1)透明式:子结点集合的管理方法在抽象类或接口中定义,向客户端隐藏树叶结点和树枝结点的区别。缺点:虽然树枝对象还是树叶对象在客户端看来是没区别了,但是他们两者确实是有区别的。使用透明式的实现方式,就会发生这样的情况:客户端可能调用了树叶对象的子结点管理方法,使用透明式实现使得这样的错误在编译器无法被检查出来,只能延迟到运行期才会暴露出来。(说白了就是客户端可能会调到空的方法。) 2)安全式:子结点集合的管理方式只在树枝接点中定义,客户端必须明确知道当前对象到底是树枝还是树叶。缺点:这种方式不够透明,树枝和树叶具有不同的接口,客户端就不能把它们当成同一类对象看待了。(说白了就是不能把树枝和树叶全部上转成他们的抽象类或接口。) * * * 创建模式:对类的实例化过程的抽象化 结构模式:如何将类或者对象结合在一起形成更大的结构。 行为模式:在不同的对象之间划分责任和算法的抽象化。 类模式:通过继承定义描述类之间关系,编译时建立(模板,工厂方法,适配器,解释器) 对象模式:利用组合(聚合)定义来描述对象之间的关系。运行时建立。更加动态。 命令模式的适用场合 1.使用命令模式作为“Call Back”在面向对象系统中的替代 。 2.需要在不同的时间指定请求、将请求排队。 3.系统需要支持命令的撤消(undo)。 4.如果一个系统要将系统中所有的数据更新到日志里,以便在系统崩溃时,可以根据日志里读回所有的数据更新命令,重新调用Execute()方法一条一条执行这些命令,从而恢复系统在崩溃前所做的数据更新。 5. 一个系统需要支持交易。 命令模式的优缺点 优点: 命令模式把请求一个操作的对象和知道怎么执行一个操作的对象分割开。 命令类和其他任何别的类一样,可以修改和推广。 可以把命令对象聚合在一起合成为合成命令。 由于增加新的具体命令类不影响其他的类,因此增加新的具体命令类很容易。 缺点: 适用命令模式会导致某些系统有过多的具体命令类。 命令模式总结 耦合与变化:??? 耦合是软件不能抵御变化灾难的根本性原因。不仅实体对象与实体对象之间存在耦合关系,实体对象与行为操作之间也存在耦合关系。 动机(Motivate):??? 在软件系统中,“行为请求者”与“行为实现者”通常呈现一种“紧耦合”。但在某些场合,比如要对行为进行“记录、撤销/重做、事务”等处理,这种无法抵御变化的紧耦合是不合适的。 意图(Intent):??? 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤消的操作。 ?????? 命令模式和其他模式的关系 与合成模式的关系: 合成模式可以应用的命令类的合成上,从几个具体命令类合成宏命令类。合成模式的简略类图如下所示: 命令模式和其他模式的关系 与备忘录模式的关系: 如果命令需要撤销和恢复功能的话,备忘录模式可以用来存储关于命令的效果状态信息,以便在撤销命令时可以撤销命令的效果。备忘录模式的简略类图如下所示: 命令模式和其他模式的关系 与原始模型模式的关系: 如果命令类带有clone()方法的话,命令就可以被复制。原始模型模式的简略类图如下图所示: 22、备忘录(Memento)模式 主讲人:何卡特 组员:庞卫巍、邓宇乐 2页 MEMENTO—同时跟几个MM聊天时,一定要记清楚刚才跟MM说了些什么话,不然MM发现了会不高兴的哦,幸亏我有个备忘录,刚才与哪个MM说了什么话我都拷贝一份放到备忘录里面保存,这样可以随时察看以前的记录啦。备忘录模式:备忘录对象是一个用来存储另外一个对象内部状态的快照的对象。备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捉住,并外部化,存储起来,从而可以在将来合适的时候把这个对象还原到存储起来的状态。 备忘录模式又叫快照模式或Token模式,是对象的行为模式[GOF95]. 备忘录对象是一个用来存储另一个对象内部状态的快照的对象。它的用意是将一个对象的状态捕捉住,并外部化,存储起来。从而可以在将来合适的时候把这个对象还原到存储起来的状态。 备忘录模式有两种实现方式:一种是白箱实现,一种是黑箱实现。 定义 1、白箱实现????备忘录角色的内部所存储的状态就对所有对象公开。因此这个实现叫白箱实现。???? 白箱实现将发起人角色的状态存储在一个大家看得到的地方,因此是破坏封装性的。但是通过程序员的自律,同样可以在一定程度上实现模式的大部分用意。因此白箱实现
您可能关注的文档
- 2016--2017学年度高三年第三次考试化学试题(普通班)讲诉.doc
- 23-《和时间赛跑》课件PPT解析.ppt
- 13和时间赛跑 整理版讲诉.ppt
- 23利用化学方程式计算解析.docx
- 23战后世界经济的发展趋势课件(共16张PPT解析.ppt
- 23社会主义宏观调控体系与保障体系解析.ppt
- 23学与问新解析.ppt
- 23铬矿选矿评述解析.doc
- 23课《刷子李》课件完美版解析.ppt
- 23确定位置解析.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- 北师大版三年级下册数学全册教学设计(配2026年春改版教材).docx
- (2026年)跌倒坠床护理综合指南PPT课件.pptx VIP
- 工程设计应急响应方案(3篇).docx VIP
- 征信简版电子版PDF个人信用报告最新版2024年可编辑带水印模板.pdf VIP
- ntvf调试资料解读.doc VIP
- 电影《色.戒》的叙事伦理.doc VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 佳能EOS1500D基本使用说明书说明书.pdf VIP
- 上海大学2023-2024学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 渣打银行(香港)有限公司.PDF VIP
原创力文档

文档评论(0)