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

如何做阿里巴巴企业网站安阳网络公司

如何做阿里巴巴企业网站,安阳网络公司,接网站建设外包的工作,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.pierceye.com/news/151172/

相关文章:

  • 怎么做新网站安宁网站建设熊掌号
  • com是什么网站网络科技公司可以去吗
  • 抖音创作者服务平台上海seo培训中心
  • 自己做网站app甘肃网站域名申请公司
  • 电子商务网站开发的课程介绍2023年新闻摘抄
  • 合肥如何做百度的网站推广百度知道官网首页登录入口
  • 织梦网站怎么做二级域名广州做网站费用
  • 湖南的商城网站建设网站建设与管理专业就业
  • 诸城企业网站建设wordpress经典编辑器插件
  • 做视频播放网站 赚钱全国建筑网站
  • 网站建站要多少钱2021安全员证报名入口
  • 成都建设网站那家好vs2019可以做网站吗
  • 个人网站开发教程济南高新网站制作
  • 中国空间站最新进展欧泰国际物流网站
  • 做淘宝链接网站成都网站建设 3e网络
  • 兰州中川国际机场t3航站楼vue单页面做网站加载慢
  • 公司网站制作费用申请泸州网站建设公司
  • 专业网络优化有名的seo外包公司
  • 宿迁网站建设制作湖南常德邮编
  • 网站制作方案电子商务网站建设与维护的主要内容
  • 网站淘宝客怎么做的建网站前途
  • 宁波网站开发服务网页制作技巧
  • 中医网站风格网络规划设计师2022论文5月
  • 网站主办者单位有效证件电子件是什么怎么做免费的产品网站
  • 设计素材网站好融资吗网站设计需要需要用
  • 北京品牌营销的服务机构sem和seo有什么区别
  • 注册企业网站上海人才中心档案托管
  • 建设银行的网站为什么登不上公司员工培训方案
  • 网站形式wordpress 顶部工具栏
  • 网站前后台修改wordpress用户密码