Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.9k views
in Technique[技术] by (71.8m points)

js中发布订阅模式和常见的回调函数有什么区别?

如题。
感觉发布订阅就是多写几次回调,或者说把订阅的函数都集合在一个回调函数中。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

发布-订阅确实要多写几次回调,也确实把订阅的函数都集中处理了。
但是使用回调-订阅的时候通常也是写回调函数,如果你不去深究它的设计思想的话,你就发现它和 addEventLisener 没有很大的区别。
发布-订阅的设计思想就俩字解耦,就像电话线路的设计一样。使用 addEventListener 就像专线电话一样,你家里必须把 11012012315……还有你亲朋好友都连起来,不然就没法聊天,你可以想一下照这样做你家里得连多少条电话线,这叫耦合;但是使用一个公共的 eventBus 来实现 发布-订阅 之后,就像使用公共线路一样,只要双方约定一个号码就可以通话了,双方只与公共线路耦合,彼此是解耦的。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

1.4m articles

1.4m replys

5 comments

57.0k users

...