当前位置: 首页 > news >正文

做身份证网站十大门户网站

做身份证网站,十大门户网站,wordpress七牛图片插件,深圳微商城网站制作联系电话调停者模式是一种行为设计模式,它通过引入一个调停者对象来集中处理一组对象之间的交互。调停者模式的目标是减少对象之间的直接通信,从而降低耦合度,并且使代码更易于维护和扩展。 调停者模式特性 将对象之间的通信集中在一个调停者对象中…

调停者模式是一种行为设计模式,它通过引入一个调停者对象来集中处理一组对象之间的交互。调停者模式的目标是减少对象之间的直接通信,从而降低耦合度,并且使代码更易于维护和扩展。

调停者模式特性

  1. 将对象之间的通信集中在一个调停者对象中,避免了对象之间的直接耦合。
  2. 调停者对象可以控制和协调一组相关对象之间的交互。
  3. 调停者模式可以简化复杂系统中的交互逻辑,使代码更易于理解和维护。

应用示例

1. 表单验证

在一个表单中,各个输入字段之间可能存在依赖关系。使用调停者模式可以将表单验证逻辑集中在一个验证器对象中,各个输入字段只需要将自己的值传递给验证器进行验证即可。这样可以避免输入字段之间直接进行通信,并且使得验证逻辑更加清晰。

 
class Mediator {constructor() {this.fields = [];}addField(field) {this.fields.push(field);}validate() {let isValid = true;this.fields.forEach(field => {if (!field.validate()) {isValid = false;}});return isValid;}
}class Field {constructor(mediator) {this.mediator = mediator;this.value = '';}setValue(value) {this.value = value;this.mediator.validate();}validate() {// 验证逻辑return true;}
}const mediator = new Mediator();
const field1 = new Field(mediator);
const field2 = new Field(mediator);mediator.addField(field1);
mediator.addField(field2);field1.setValue('value1');
field2.setValue('value2');

在上述代码中,Mediator 是调停者对象,Field 是需要进行验证的输入字段。通过将输入字段注册到调停者对象中,并在字段值发生变化时通知调停者进行验证,可以实现表单验证的功能。

Mediator 类是一个中介者,它维护一个字段数组 fields,可以通过 addField 方法向数组中添加字段对象。它还提供了一个 validate 方法,用于验证所有字段是否有效。

Field 类表示一个字段,每个字段对象都有一个中介者引用 mediator,以及一个值属性 valuesetValue 方法用于设置字段的值,并在设置值后调用中介者的 validate 方法进行验证。

最后部分,创建了一个中介者对象 mediator 和两个字段对象 field1 和 field2,并将它们关联在一起。然后通过调用 addField 方法将这两个字段添加到中介者的字段数组中。最后,分别设置 field1 和 field2 的值为 'value1' 和 'value2'

2. 组件间通信

在一个复杂的前端应用中,各个组件之间可能需要进行通信和协调。使用调停者模式可以将组件之间的通信逻辑集中在一个调停者对象中,各个组件只需要将自己的状态或事件传递给调停者进行处理即可。这样可以避免组件之间直接进行通信,并且使得组件之间的关系更加清晰。

 
class Mediator {constructor() {this.components = [];}addComponent(component) {this.components.push(component);}notify(sender, event, data) {this.components.forEach(component => {if (component !== sender) {component.receive(event, data);}});}
}class Component {constructor(mediator) {this.mediator = mediator;this.mediator.addComponent(this);}send(event, data) {this.mediator.notify(this, event, data);}receive(event, data) {// 处理事件和数据}
}const mediator = new Mediator();
const component1 = new Component(mediator);
const component2 = new Component(mediator);component1.send('event', 'data');

Mediator 类有一个构造函数,它初始化了一个空的数组 components,用于存储组件对象。它提供了两个方法:

  • addComponent:将传入的组件对象添加到 components 数组中。
  • notify:遍历 components 数组中的所有组件,除了发送方(sender)之外,调用每个组件的 receive 方法,并传递事件和数据作为参数。

Component 类有一个构造函数,它接收一个中介者对象作为参数,并将其存储在 mediator 属性中,同时调用中介者的 addComponent 方法将自己添加到中介者的组件数组中。它提供了三个方法:

  • send:调用中介者的 notify 方法,将当前组件作为发送方,同时传递事件和数据作为参数。
  • receive:这是一个抽象方法,用于处理接收到的事件和数据。具体的处理逻辑需要根据实际需求实现。

在代码的最后部分,创建了一个中介者对象 mediator 和两个组件对象 component1 和 component2,并将它们关联在一起。然后调用 component1 的 send 方法发送一个事件和数据,这样就会触发中介者的 notify 方法,使得 component2 的 receive 方法被调用。

优缺点

优点
  1. 降低了对象之间的耦合度,使得代码更易于维护和扩展。
  2. 集中处理了对象之间的交互逻辑,使得代码更易于理解。
  3. 可以简化复杂系统中的交互逻辑,提高代码的可读性和可维护性。
缺点
  1. 引入了一个额外的调停者对象,增加了系统的复杂性。
  2. 调停者对象可能会变得庞大和复杂,难以维护。

总结

调停者模式是一种有助于降低对象之间耦合度的设计模式。它通过引入一个调停者对象来集中处理一组对象之间的交互,使得代码更易于维护和扩展。在前端开发中,调停者模式可以应用于表单验证、消息订阅与发布、组件间通信等场景。尽管调停者模式可能会增加系统的复杂性,并且调停者对象可能变得庞大和复杂,但它仍然是一种有价值的设计模式,可以提高代码的可读性和可维护性。

http://www.khdw.cn/news/20779.html

相关文章:

  • 网络营销的机遇和挑战互联网优化是什么意思
  • 网站qq代码seo云优化软件
  • 绿色的医疗资讯手机网站wap模板html源码下载网站关键词排名分析
  • 淄博网站制作公司托管北京seo加盟
  • 宝安网站设计哪家好管理人员课程培训
  • 做h5的网站有哪些十大免费b2b网站
  • 美女图片wordpress博客主题seo经理
  • 微信开发流程四步seo需要掌握什么技能
  • 网站建设优化服务价位免费网上申请注册
  • 网站开发程序员是做什么的中超最新积分榜
  • 怎么在百度建设一个网站房产网站建设
  • web网站开发搜索seo引擎
  • 服装外贸行业发展趋势谷歌seo排名技巧
  • 数据库 搭建 网站杭州seo的优化
  • 西安知名的集团门户网站建设服务商baike seotl
  • 网站进入特效做运营的具体做什么
  • 哪些网站做的好看沈阳高端关键词优化
  • 建设pc 移动网站网络舆情监测平台
  • wordpress 标题颜色重庆seo网站推广费用
  • 中金超钒 网站建设河源疫情最新通报
  • 软件大全链接网站seo的排名机制
  • 临沂建设网站制作公司百度推广app下载安卓版
  • 培训网站建设公司哪家好技术培训机构
  • 建站程序下载百度官网下载安装
  • 精品网站建设公司商品营销推广的方法有哪些
  • 教务管理系统登录入口官网提供seo顾问服务适合的对象是
  • 网站原创文章规范海外推广服务
  • 宜宾做直销会员网站优化建站seo门户
  • 长安做外贸网站免费引流app下载
  • 开通公司网站360站长工具seo