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

如何自行建设网站思途智旅游网站开发

如何自行建设网站,思途智旅游网站开发,wordpress log文件大小,树莓派可以用wordpress一、简介 中介模式定义了一个单独的#xff08;中介#xff09;对象#xff0c;来封装一组对象之间的交互。将这组对象之间的交互委派给与中介对象交互#xff0c;来避免对象之间的直接交互。 中介模式的设计思想跟中间层很像#xff0c;通过引入中介这个中间层#xf…一、简介 中介模式定义了一个单独的中介对象来封装一组对象之间的交互。将这组对象之间的交互委派给与中介对象交互来避免对象之间的直接交互。 中介模式的设计思想跟中间层很像通过引入中介这个中间层将一组对象之间的交互关系或者说依赖关系从多对多网状关系转换为一对多星状关系。原来一个对象要跟n个对象交互现在只需要跟一个中介对象交互从而最小化对象之间的交互关系降低了代码的复杂度提高了代码的可读性和可维护性。 二、适用场景 复杂通信对象组重用对象 三、UML类图 四、案例 飞机向其他飞机广播信息。 package mainimport fmttype Mediator interface {Send(message string, sender *Airplane) }type Airplane struct {Name stringMediator Mediator }func NewAirplane(name string, mediator Mediator) *Airplane {return Airplane{Name: name, Mediator: mediator} }func (a *Airplane) Send(message string) {fmt.Printf(%v sends message: %v\n, a.Name, message)a.Mediator.Send(message, a) }func (a *Airplane) Receive(message string) {fmt.Printf(%v receives message: %v\n, a.Name, message) }type AirTrafficControl struct {AirplaneList []*Airplane }func NewAirTrafficControl() *AirTrafficControl {return AirTrafficControl{AirplaneList: []*Airplane{}} }func (atc *AirTrafficControl) RegisterAirplane(airplane *Airplane) {atc.AirplaneList append(atc.AirplaneList, airplane) }func (atc *AirTrafficControl) Send(message string, airlane *Airplane) {for _, curr : range atc.AirplaneList {if airlane.Name ! curr.Name {curr.Receive(message)}} }func main() {atc : NewAirTrafficControl()airplane1 : NewAirplane(Airplane1, atc)airplane2 : NewAirplane(Airplane2, atc)airplane3 : NewAirplane(Airplane3, atc)atc.RegisterAirplane(airplane1)atc.RegisterAirplane(airplane2)atc.RegisterAirplane(airplane3)airplane1.Send(Hello, everyone!)airplane2.Send(Hello, everyone!)airplane3.Send(Hello, everyone!) }五、对比 观察者模式和中介模式都是为了实现参与者之间的解耦简化交互关系。两者的不同在于应用场景上。在观察者模式的应用场景中参与者之间的交互比较有条理一般都是单向的一个参与者只有一个身份要么是观察者要么是被观察者。而在中介模式的应用场景中参与者之间的交互关系错综复杂既可以是消息的发送者、也可以同时是消息的接收者。
http://www.zqtcl.cn/news/432039/

相关文章:

  • 东莞个人网站设计潍坊专业人员继续教育
  • 网站建设如何创业建设招标网官网
  • 公司没有销售网站怎么做业务怎么做微信推送 网站
  • 商城网站模版郴州网页定制
  • 电子商务网站建设步骤海外广告投放渠道
  • 网站用花生壳nas做存储十堰市网站建设
  • 用html5做手机网站抖音平台建站工具
  • 在线课程网站开发的研究意义网站开发需要哪些知识
  • 深圳网站优化怎么做手工艺品外贸出口公司网站建设方案
  • 从网站优化之角度出发做网站策划wordpress邀请码插件
  • 大学营销型网站建设实训课程o2o的四种营销模式
  • 咋做网站代码背景图宁远网站建设
  • 有哪些可以做网站的企业网站想换个风格怎么做
  • 怎么在百度搜索自己的网站在电脑上建设个人网站
  • wordpress网站菜单固定电商未来发展趋势前景
  • 五合一网站建设费用python 做网站 用哪个框架好
  • 波莱网站开发动态域名可以做网站吗
  • 网站建设 赣icp 南昌面馆装修设计
  • 福田附近公司做网站建设多少钱网站建设文献综述范文
  • 镇江网站建设设计建设银行投诉网站首页
  • 石家庄个人做网站广州全网络营销
  • html5网站建设加盟wordpress 4.8.6
  • 携程网站建设的基本特点哈尔滨做平台网站平台公司
  • 网站建设入门解读国模 wordpress
  • 网站购物车js代码怎么做制作app的软件有哪些
  • 36氪网站用什么程序做的互联网门户网站建设
  • 视频聚合网站怎么做不侵权wordpress 管理员插件
  • 传媒网站后台免费模板网站建设的进度计划
  • 如何做网站排名合肥全网优化
  • 网站建设招聘信息官网 wordpress