JavaScript中介者模式与开发实践(上)

本文介绍了中介者模式,一种用于解决对象间复杂关系的设计模式,它通过引入中介者对象,将原本的网状引用转变为对象与中介者的简单关系,降低了耦合度。文章通过生活中的例子,如班长和机场指挥塔,来阐述中介者模式的概念,并强调其在代码优化中的作用。
摘要由CSDN通过智能技术生成

前言

作为一个前端切图仔,少有和各类设计模式打交道。但这不影响我们学习设计模式的思维,来提升我们的代码水平。

本章通过讲解中介者模式,希望能够让你对设计模式更一步的学习。

本章学习内容👇

  • 认识中介者模式
  • 现实生活中的中介者对象

中介者模式

什么是中介者模式?

中介者模式:一种来解决对象间复杂关系而导致网状的交叉引用的模式。

what?

简单来说,在实际情况中,就像我们对象之间时而会保存另外一个对象的引用。而被引用的对象又可能会保存到另外个对象的引用。这样的引用多了以后就会构成一种网状的复杂引用关系。这就导致了,当我们需要改变或删除这个网状结构中一个对象时,很可能就会牵扯到这个结构中许多其他的对象,从而增加了很多工作量。

中介者模式的作用就是来解除掉这种网状关系。将这种对象与对象之间紧耦合的关系转变成通过一个中介者对象使用,将网状结构的引用关系全部存在中介者对象当中。这样就使得,当我们需要改变结构中一个对象时,只需要通知中介者对象即可。中介者使各对象之间耦合松散,并且使得各个对象之间相互独立起来,将从前的网状结构改变成了简单的一对多关系(所有对象对应找中介者对象)。

现实生活中的中介者对象

在现实生活中也常有中介者模式的影子,下面举例说明下

简单的中学时期

还记得为什么在中学时候隔壁班上的同学要找人,都会找班长吗?因为每一个同学不会说认识其他班上的所有同学,所以就都通过中介者(班长)进行查询。

机场指挥塔

在飞机航行途中,常需要就近空域的其他飞机的航行情况。但飞机航行途中很难掌握每一只就近航机的情况,所以都是通过中介者机场指挥塔来协助飞行。机场指挥塔知道所有的飞机的飞行状况,可以安排所有飞机的起降时间,并且能够随时做出航行调整。

\

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值