![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
Aelousdp
双非在读
展开
-
JS设计模式学习 - 观察者模式
观察者模式(Observer)观察者模式定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知。又称为发布-订阅模式。观察者模式最主要的就是完美的将观察者与被观察的对象分离开来。由于面向对象的单一职责原则,使得系统中的每一个类将重点放在某一个功能上,而不是其他方面。观察者模式在模块之间划定了情绪的界限,提高了应用程序的可维护性和重用性。发布-订阅模式的作用发布-订阅模式可以广泛应用于异步编程之中,这是一种替代传递回调函数的方案。比如,我们可以订阅 ajax原创 2020-07-21 09:24:38 · 489 阅读 · 0 评论 -
JS设计模式学习 - 单一职责原则
单一职责原则(SRP)就一个类而言,应该仅有一个引起它变化的原因。单一职责原则的职责被定义为“引起变化的原因”。如果我们有两个动机去改写一个方法,那么这个方法就有了两个职责。每一个职责都是变化的一个轴线,如果一个方法承担了过多的职责,那么在需求的变迁过程中,需要改写这个方法的可能性就越大。特别是当两个职责耦合在一起的时候,一个职责发生变化可能会影响到其他职责的实现,造成意想不到的破坏。这种耦合性得到的是低内聚和脆弱的设计。因此 SRP 原则体现为:一个对象(方法)只做一件事情。设计模式中的 S原创 2020-07-21 09:23:53 · 413 阅读 · 0 评论 -
JS设计模式学习 - 适配器模式
适配器模式(Adapter)提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。适配器模式的作用是解决两个软件实体间的接口不兼容问题。使用适配器模式之后,原本由于接口不兼容而不能工作的两个软件实体可以一起工作。适配器的别名是包装器(wrapper),这是一个相对简单的模式。在程序开发中有许多这样的场景:当我们试图调用模块或者对象的某个接口时,却发现这个接口的格式并不符合目前的需求。这时候有两种解决办法,第一种是修改原来的接口实现,但如果原来的模块很复杂,或者我们拿到的模块原创 2020-07-21 09:23:07 · 423 阅读 · 0 评论 -
JS设计模式学习 - 迭代器模式
迭代器模式(Iterator)提供一种方法顺序访问一个聚合对象中的各个元素,而又不需要暴露该对象的内部表示。迭代器模式可以把迭代的过程从业务逻辑中分离出来,在使用迭代器模式之后,即使不关心对象的内部构造,也可以按照顺序访问其中的每个元素。目前,几乎所有流行的语言如 Java、Ruby 等都已经有了内置迭代器的实现,许多浏览器也支持 JavaScript 的 Array.prototype.forEach。jQuery 中的迭代器迭代器模式无非就是循环访问聚合对象中的各个元素。比如 jQuer原创 2020-07-21 09:22:20 · 329 阅读 · 0 评论