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

甘肃网站空间网站首页上海网站建设公司

甘肃网站空间,网站首页上海网站建设公司,做网络竞拍的网站,域名及密码登录域名管理网站调停者模式是一种行为设计模式#xff0c;它通过引入一个调停者对象来集中处理一组对象之间的交互。调停者模式的目标是减少对象之间的直接通信#xff0c;从而降低耦合度#xff0c;并且使代码更易于维护和扩展。 调停者模式特性 将对象之间的通信集中在一个调停者对象中…调停者模式是一种行为设计模式它通过引入一个调停者对象来集中处理一组对象之间的交互。调停者模式的目标是减少对象之间的直接通信从而降低耦合度并且使代码更易于维护和扩展。 调停者模式特性 将对象之间的通信集中在一个调停者对象中避免了对象之间的直接耦合。调停者对象可以控制和协调一组相关对象之间的交互。调停者模式可以简化复杂系统中的交互逻辑使代码更易于理解和维护。 应用示例 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以及一个值属性 value。setValue 方法用于设置字段的值并在设置值后调用中介者的 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 方法被调用。 优缺点 优点 降低了对象之间的耦合度使得代码更易于维护和扩展。集中处理了对象之间的交互逻辑使得代码更易于理解。可以简化复杂系统中的交互逻辑提高代码的可读性和可维护性。 缺点 引入了一个额外的调停者对象增加了系统的复杂性。调停者对象可能会变得庞大和复杂难以维护。 总结 调停者模式是一种有助于降低对象之间耦合度的设计模式。它通过引入一个调停者对象来集中处理一组对象之间的交互使得代码更易于维护和扩展。在前端开发中调停者模式可以应用于表单验证、消息订阅与发布、组件间通信等场景。尽管调停者模式可能会增加系统的复杂性并且调停者对象可能变得庞大和复杂但它仍然是一种有价值的设计模式可以提高代码的可读性和可维护性。
http://www.zqtcl.cn/news/321278/

相关文章:

  • 淮安做网站找哪家公司verycloud wordpress
  • 无法连接到wordpress站点网站建设的 几点
  • 网站免费空间购买wordpress支持页面模版
  • 腾讯建设网站视频宁波城乡住房建设厅网站
  • 乐清网站开发公司个人网站建设工作室
  • 网站空间升级通知手机端怎么看世界杯
  • 广西南宁网站推广建设网站视频教程
  • 福州专业网站建设推广费用nas可做网站服务器吗
  • 齐鲁建设网站福建省高速公路建设管理网站
  • 比格设计网站官网收录网站查询
  • 国外做直播网站淘宝电商网站怎么做的
  • 国外私人网站网站由那些组成
  • 网站备案多久通过机械设备网站
  • 企业自建站案例网站基础知识域名5个点
  • 咸宁建设网站海口市网站建设
  • 认识电子商务网站建设技术网站交换链接怎么做?
  • 定制商城网站建设全球搜索引擎排名2021
  • 徐州百度网站快速优化做网站视频图片加载不出来
  • 网站被host重定向处理浙江网新股吧
  • asp国外网站什么页游好玩
  • 高端简约30平米办公室装修广州搜索seo网站优化
  • 海口的网站建设公司wordpress二次元极简主题
  • 南京快速建站公司国家网站域名
  • 兰州装修公司哪家好网站seo推广员招聘
  • 郑州网站推广 汉狮网络易企秀类似的软件
  • 做外单网站成都网页制作公司排名
  • 成都优化网站关键词搜索引擎有哪些平台
  • 福建百川建设有限公司网站郑州手机软件开发公司
  • 盐城企业做网站多少钱88建网站
  • 南京网站制作报价wordpress主题 yusi