摘要: 观察者模式(Observer Pattern) —— 定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新。 观察者模式可以理解为发布 订阅模式,即多个订阅者(观察者)向发布者(被观察者)订阅状态信息,当发布者更新状态时会将状态信息向它的订阅者发布 阅读全文
posted @ 2019-08-10 19:56 让我思考一下 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 模板模式(Template Pattern) —— 定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。Template Method使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 在面向对象系统的分析与设计过程中经常会遇到这样一种情况:对于某一个业务逻辑(算法实现)在不同的对象 阅读全文
posted @ 2019-08-10 16:48 让我思考一下 阅读(267) 评论(0) 推荐(0) 编辑
摘要: 代理模式——为其他对象提供一种代理以控制对这个对象的访问。 在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。 解决的问题场景: 在直接访问对象时会带来问题,有些对象由于某些原因(对象创建开销很大,或者某些操作需要安全控制,或者需要进程外的访 阅读全文
posted @ 2019-08-10 15:48 让我思考一下 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 顺序锁与读写自旋锁非常类似,只是赋予了写者较高的优先级:即使在读者正在读的时候也允许写者继续运行。这样的好处是写者不用等待(除非另一个写者正在写),缺点是有些时候读者不得不反复多次读相同的数据直到它获得有效的副本。 每个顺序锁就是包括两个字段的 结构:一个类型为 的`lock sequence`字段 阅读全文
posted @ 2019-08-10 14:50 让我思考一下 阅读(541) 评论(0) 推荐(0) 编辑