摘要: 原文:http://c.biancheng.net/view/1390.html定义:指多个对象间存在一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。这种模式有时又称作发布-订阅模式、模型-视图模式,它是对象行为型模式。主要优点: 降低了目标与观察者之间的耦合 阅读全文
posted @ 2021-11-18 15:41 huiy_小溪 阅读(47) 评论(0) 推荐(0)
摘要: 原文:http://c.biancheng.net/view/1388.html定义:对有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变其行为。什么时候用:当一个对象的行为取决于它的状态,并且它必须在运行时根据状态改变它的行为时,就可以考虑使用状态模式 阅读全文
posted @ 2021-11-18 15:26 huiy_小溪 阅读(39) 评论(0) 推荐(0)
摘要: 原文:http://c.biancheng.net/view/1383.html 什么时候用:多个对象可以处理一个请求,但具体由哪个对象处理该请求在运行时自动确定。 可动态指定一组对象处理请求,或添加新的处理者。 需要在不明确指定请求处理者的情况下,向多个处理者中的一个提交请求。 主要优点: 降低了 阅读全文
posted @ 2021-11-18 10:45 huiy_小溪 阅读(39) 评论(0) 推荐(0)
摘要: 原文:http://c.biancheng.net/view/1380.html什么时候用:请求调用者需要与请求接收者解耦时,命令模式可以使调用者和接收者不直接交互。 系统随机请求命令或经常增加、删除命令时,命令模式可以方便地实现这些功能。 当系统需要执行一组操作时,命令模式可以定义宏命令来实现该功 阅读全文
posted @ 2021-11-18 10:13 huiy_小溪 阅读(39) 评论(0) 推荐(0)
摘要: 原文:http://c.biancheng.net/view/1378.html什么时候用:一个系统需要动态地在几种算法中选择一种时,可将每个算法封装到策略类中。 一个类定义了多种行为,并且这些行为在这个类的操作中以多个条件语句的形式出现,可将每个条件分支移入它们各自的策略类中以代替这些条件语句。 阅读全文
posted @ 2021-11-18 10:05 huiy_小溪 阅读(51) 评论(0) 推荐(0)
摘要: 原文:http://c.biancheng.net/view/1373.html什么时候用:在需要表示一个对象整体与部分的层次结构的场合。 要求对用户隐藏组合对象与单个对象的不同,用户可以用统一的接口使用组合结构中的所有对象的场合主要优点: 组合模式使得客户端代码可以一致地处理单个对象和组合对象,无 阅读全文
posted @ 2021-11-18 09:20 huiy_小溪 阅读(32) 评论(0) 推荐(0)
摘要: 本质:缓存共享对象,降低内存消耗什么时候用:系统中存在大量相同或相似的对象,这些对象耗费大量的内存资源。 大部分的对象可以按照内部状态进行分组,且可将不同部分外部化,这样每一个组只需保存一个内部状态。 由于享元模式需要额外维护一个保存享元的数据结构,所以应当在有足够多的享元实例时才值得使用享元模式。 阅读全文
posted @ 2021-11-18 09:12 huiy_小溪 阅读(27) 评论(0) 推荐(0)