设计模式之备忘录模式

备忘录模式介绍

备忘录模式是可回复或回滚配置、以版本为核心功能的设计模式,这种设计模式属于应为模式。在功能实现上,是以不破坏原对象为基础增加备忘录操作类,记录原对象的行为,从而实现备忘录模式。

设计模式之中介者模式

中介者模式介绍

中介者的作用是,当复杂功能应用指尖重复调用时,在中间添加一层中介者包装服务,对外提供简单、通用和易扩展的服务能力。

设计模式之迭代器模式

迭代器模式介绍

迭代器模式就像日常使用的Iterator方法遍历。虽然这种设计模式在实际业务开发中用得并不多,但却要使用JDK提供的list集合遍历。另外,增强的for循环语句虽然是循环输出数据,但并不是迭代器模式。迭代器模式的特点是实现Iterable接口,通过next方式获取集合元素,同时具备删除元素等操作功能;而增强的for循环语句是无法实现的。

设计模式之命令模式

设计模式介绍

就像我们以前用手柄按键玩游戏一样,这个游戏的控制方式——按键操作就像命令模式。命令模式虽然在编程开发中用的比较少,但是这种模式在日常生活种却经常用到,例如Ctrl+C和Ctrl+v。

设计模式之责任链模式

责任链模式介绍

责任链模式的核心是解决一组服务中的先后执行关系,就像出差借款需要审批,5000元以下直接找部门领导、分管领导、财务部门审批,5000元以上需要找更高一级的领导审批。

设计模式之代理模式

代理模式介绍

代理模式就是为了方便访问某些资源,使对象类更加易用,从而在操作上使用的代理服务。

什么是消息队列

什么是消息队列(MQ)

MQ从字面意思上看,本质是个队列,FIFO先入先出,只不过队列中存放的内容是message而已,还是一种跨进程的通信机制,用于上下游传递消息。在互联网架构中,MQ是一种非常常见的上下游“逻辑解耦+物理解耦”的消息通信服务。使用了MQ之后,消息发送上游只需要依赖MQ,不用依赖其他服务。

MQ

设计模式之享元模式

享元模式介绍

享元模式主要用于共享通用对象,减少内存的使用,提升系统的访问效率。较大的对象通常比较耗费内存,需要查询大量的接口或使用数据库资源,因此有必要统一抽离出来作为共享对象使用。

设计模式之外观模式

外观模式介绍

外观模式也叫门面模式,它主要解决的是降低调用方使用接口时的复杂逻辑组合。在调用方与实际的接口提供方之间添加了一个中间层,向包装逻辑提供API接口。有时外观模式也被用在中间件层,用服务中的通用性复杂逻辑包装中间件层,让使用方可以只关心业务,简化调用。

设计模式之装饰器模式

设计模式介绍

装饰器模式就像俄罗斯套娃,它的核心是在不改变原有类的基础上给类新增功能。对于不改变原有类,可能有的人会想到集成、AOP切面,虽然这些方式都可以实现,但是使用装饰器模式使另外一种更灵活的思路,能够避免继承导致的子类过多问题,也可以避免AOP带来的复杂性问题。