![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
【设计模式】
AndrLin
这个作者很懒,什么都没留下…
展开
-
设计模式学习笔记——观察者模式
定义 观察者模式(发布订阅模式)——在对象之间定义一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象都会收到通知,并自动更新。使用场景关联行为场景,需要注意的是,关联行为是可拆分的,而不是“组合”关系。事件多级触发场景。跨系统的消息交换场景,如消息队列、事件总线的处理机制。UML类图Subject:抽象主题,被观察者(Observable)的角色,抽象主题角色把所有观察者对象的原创 2017-04-11 19:37:29 · 387 阅读 · 0 评论 -
设计模式学习笔记——装饰模式
定义 装饰模式——动态地将责任附加到对象上。就增加功能来说,装饰模式相比生成子类更为灵活。使用场景需要透明且动态地扩展类的功能时。需要去除相关类中重复的装饰逻辑时。UML类图Component:是定义的一个对象接口,可以给这些对象动态地添加职责。ConcreteComponent:组件具体实现类。该类是Component类的基本实现,也是我们装饰的具体对象。Decorator:装饰原创 2017-04-13 20:42:37 · 576 阅读 · 0 评论 -
设计模式学习笔记——策略模式
定义 策略模式——定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互转换。此模式让算法的变化独立于使用算法的客户。使用场景针对同一类型问题的多种处理方式,仅仅是具体行为有差别时。需要安全地封装多种同一类型的操作时。出现同一抽象类有多个子类,而又需要使用if-else或者switch-case来选择具体子类时。UML类图例子用上下班出行方式来演示策略模式。具体的骑单车、乘公原创 2017-04-06 20:35:16 · 486 阅读 · 0 评论 -
设计模式学习笔记——单例模式
单例模式:确保一个类只有一个实例,并提供一个全局访问点。原创 2017-05-23 22:51:04 · 368 阅读 · 0 评论 -
设计模式学习笔记——命令模式
命令模式:将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。原创 2017-05-25 21:42:08 · 374 阅读 · 0 评论 -
设计模式学习笔记——简单工厂模式、工厂方法模式、抽象工厂模式
简单工厂模式定义 简单工厂严格意义来讲不能算作是一个设计模式,通常使用一个静态方法接收参数,通过参数来判断实例化不同的实现类。优缺点优点:简单工厂模式能够根据外界给定的信息,决定究竟应该创建哪个具体类的对象。明确区分了各自的职责和权力,有利于整个软件体系结构的优化。缺点:很明显工厂类集中了所有实例的创建逻辑,违反高内聚的责任分配原则,它所能创建的类必须是提前考虑好的,不能直接扩展,只能修改原创 2017-05-22 21:50:22 · 457 阅读 · 0 评论