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

房地产网站设计成都制作网站的公司简介

房地产网站设计,成都制作网站的公司简介,建个淘宝那样的网站需要多少钱,软装设计公司排名一、说明 中介者模式是一种行为设计模式#xff0c;减少对象之间混乱无序的依赖关系。该模式会限制对象之间的直接交互#xff0c;迫使它们通过一个中介者对象进行合作。 (一) 解决问题 降低系统中对象之间的直接通信#xff0c;将复杂的交互转化为通过中介者进行的间接交… 一、说明 中介者模式是一种行为设计模式减少对象之间混乱无序的依赖关系。该模式会限制对象之间的直接交互迫使它们通过一个中介者对象进行合作。 (一) 解决问题 降低系统中对象之间的直接通信将复杂的交互转化为通过中介者进行的间接交互从而解耦系统各部分降低其耦合度。 (二) 使用场景 当系统和对象之间存在复杂的交互关系导致对象之间相互依赖、耦合度高难以维护时当系统需要一个可复用的交互模块用于多个对象之间的通信和协调时当想要将系统的控制逻辑集中管理、减少代码重复、提高代码可读性时 二、结构 组件Component是各种包含业务逻辑的类。每个组件都有一个指向中介者的引用该引用被声明为中介者接口类型。组件不知道中介者实际所属的类因此你可通过将其连接到不同的中介者以使其能在其他程序中复用。中介者Mediator接口声明了与组件交流的方法但通常仅包括一个通知方法。组件可将任意上下文包括自己的对象作为该方法的参数只有这样接收组件和发送者类之间才不会耦合。具体中介者ConcreteMediator封装了多种组件间的关系。具体中介者通常会保存所有组件的引用并对其进行管理甚至有时会对其生命周期进行管理。组件并不知道其他组件的情况。如果组件内发生了重要事件它只能通知中介者。中介者收到通知后能轻易地确定发送者这或许已足以判断接下来需要触发的组件了。对于组件来说中介者看上去完全就是一个黑箱。发送者不知道最终会由谁来处理自己的请求接收者也不知道最初是谁发出了请求。 三、伪代码 #!/usr/bin/env python # -*- coding: UTF-8 -*- __doc__ 中介者模式例实现一个简单的聊天室系统其中中介者对象负责协调用户之间的消息传递 from abc import ABC, abstractmethodclass Mediator(ABC):中介者基类abstractmethoddef send_message(self, sender, message):passclass ChatRoom(Mediator):具体中介者def __init__(self):self.users []def add_user(self, user):self.users.append(user)def send_message(self, sender, message):for user in self.users:if user ! sender:user.receive_message(message)class User(ABC):抽象组件类用户def __init__(self, name, mediator):self.name nameself.mediator mediatorabstractmethoddef send_message(self, message):passabstractmethoddef receive_message(self, message):passclass ChatUser(User):具体组件类用户def send_message(self, message):print(f{self.name} 发送消息: {message})self.mediator.send_message(self, message)def receive_message(self, message):print(f{self.name} 收到消息: {message})if __name__ __main__:张三 发送消息: 大家好李四 收到消息: 大家好------------------------------李四 发送消息: 你好张三张三 收到消息: 你好张三chat_room ChatRoom()user1 ChatUser(张三, chat_room)user2 ChatUser(李四, chat_room)chat_room.add_user(user1)chat_room.add_user(user2)user1.send_message(大家好)print(- * 30)user2.send_message(你好张三)四、优缺点 优点 降低系统耦合度将对象之间的通信集中在中介者对象中使得各个对象之间的关系变得简单明了降低了对象之间的直接依赖和耦合度。提高系统的灵活性使其便于扩展和维护将对象之间的交互逻辑集中在中介者对象中使得系统更加灵活能够动态地改变对象之间的交互方式。 缺点 中介者对象可能变得复杂随着系统中对象之间的交互关系变的复杂使中介者对象庞大复杂导致管理和维护成本增加。中介者模式增加了系统的单点故障由于系统中所有对象都依赖于中介者对象进行通信因此中介者对象出现故障或性能问题时可能会影响整个系统的正常运行。 【Python笔记】设计模式-CSDN博客
http://www.dnsts.com.cn/news/120908.html

相关文章:

  • 山东住房与城乡建设厅网站wordpress主题 导出
  • 免费永久网站注册网页设计与制作课程思政案例集
  • html5企业网站模板南通公司做网站
  • 个人 网站可以做导航吗深圳做网站建设公司
  • 西安网站策划长春建站宣传
  • php做网站搜索框python做直播网站
  • 企业名录搜索网站英国搜索引擎
  • 站酷网页版建站公司兴田德润实惠
  • 没有版权可以做视频网站吗网站框架怎么做的
  • 百度收录比较好的网站自己制作app的应用程序
  • 杭州市做网站哈尔滨公司网站团队
  • wordpress建好本地站怎么上传国外常用视频网站tenor怎么设置
  • 网站建设投wordpress海外建站
  • 网站百度推广方案福州网站优化
  • 2元域名注册网站怎样安装免费的wordpress
  • 网站权重的提升深圳做网站j华信科
  • 网站制作需要哪些网页设计图片简单
  • 嘉兴高档网站建设上海娱乐场所关门
  • 深圳手机商城网站设计制作银川做网站的 公司有哪些
  • vps网站助手网站开发与维修是什么意思
  • 三亚网站建设品牌wordpress 增加导航
  • 腾冲网站建设的公司佛山高端网站设计
  • 一个网站如何做推广方案自定义wordpress 登录
  • 自己网站上放个域名查询5g国产天天5g天天
  • 建个什么网站赚钱公司网站建设请示报告
  • com网站注册域名nas 建网站
  • 国际军事新闻头条黑帽seo技术培训
  • 上海 设计网站建设网站可能存在什么问题吗
  • 建设纺织原料网站烟台哪里做网站好
  • 延安做网站网站优化升级怎么做