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

顺德网站建设哪家好wordpress设置静态访问

顺德网站建设哪家好,wordpress设置静态访问,广州的一起做网站怎么样,17网站一起做网店浙江文章目录 一、概述二、示例三、模式定义四、其他 一、概述 ​ 与其叫他观察者模式#xff0c;我更愿意叫他叫 订阅-发布模式 #xff0c;这种模式在我们生活中非常常见#xff0c;比如#xff1a;追番了某个电视剧#xff0c;当电视剧有更新的时候会第一时间通知你。当你… 文章目录 一、概述二、示例三、模式定义四、其他 一、概述 ​ 与其叫他观察者模式我更愿意叫他叫 订阅-发布模式 这种模式在我们生活中非常常见比如追番了某个电视剧当电视剧有更新的时候会第一时间通知你。当你预约了某款游戏后游戏发布后就会立刻通知你而不需要你每天都去关注游戏是否上线。 二、示例 ​ 我想要说明一点对于每一种设计模式最重要的不是代码的结构而是其中所蕴含的思想你应该要去考虑的是代码为什么这么设计而不是仅仅照着这样设计因为每一种设计模式到不同的人手里写出来的代码多多少少会有些许差别但是其核心的思想是一样的那就是设计原则 分析 此模式需要发布者及时地通知所有订阅者因此发布者知道所有的订阅者的信息。发布者可以添加或者移除订阅者订阅者也可以进行订阅或者取消订阅的操作。 代码 package main// Publisher 发布者接口 type Publisher interface {AddSubscriber(subscriber Subscriber) // 添加订阅者RemoveSubscriber(subscriber Subscriber) // 移除订阅者NotifySubscribers() // 通知订阅者 }// Subscriber 订阅者接口 type Subscriber interface {GetID() string // 获取订阅者IDNotify(contextMessage string) // 通知订阅者 }// Object 被观察者, 实现 Publisher 接口 type Object struct {Subscribers []Subscriber // 订阅者列表ContextMessage string // 上下文信息 }func (p *Object) AddSubscriber(s Subscriber) {p.Subscribers append(p.Subscribers, s) }func (p *Object) RemoveSubscriber(s Subscriber) {for i, subscriber : range p.Subscribers {if subscriber.GetID() s.GetID() {p.Subscribers append(p.Subscribers[:i], p.Subscribers[i1:]...)}} }func (p *Object) NotifySubscribers() {for _, subscriber : range p.Subscribers {subscriber.Notify(p.ContextMessage)} }// UpdateContextMessage 更新上下文信息 func (p *Object) UpdateContextMessage(newMessage string) {p.ContextMessage newMessagep.NotifySubscribers() }// SubscriberA 订阅者A, 实现 Subscriber 接口 type SubscriberA struct {ID string }func (s *SubscriberA) GetID() string {return s.ID }func (s *SubscriberA) Notify(contextMessage string) {println(SubscriberA received:, contextMessage) }// SubscriberB 订阅者B, 实现 Subscriber 接口 type SubscriberB struct {ID string }func (s *SubscriberB) GetID() string {return s.ID }func (s *SubscriberB) Notify(contextMessage string) {println(SubscriberB received:, contextMessage) }func main() {// 创建被观察者object : Object{}// 创建订阅者subscriberA : SubscriberA{ID: subscriberA}subscriberB : SubscriberB{ID: subscriberB}// 添加订阅者 A 和 Bobject.AddSubscriber(subscriberA)object.AddSubscriber(subscriberB)// 更新上下文信息, 通知所有订阅者object.UpdateContextMessage(Hello World!)// 移除订阅者Bobject.RemoveSubscriber(subscriberB)// 更新上下文信息,object.UpdateContextMessage(Hello World Again!) }​ 上述代码还没有一些没有去做建议你可以尝试去实现: 订阅者能够主动的订阅或者取消订阅建议你尝试着去完成这一功能通知顺序是有序/无需的 三、模式定义 ​ 观察者模式定义了对象之间的一对多依赖这样一来每当一个对象改变状态时他所所有的依赖者都会收到通知并自动更新。 四、其他 ​ java 中也有内置的观察者模式。java.util 包内包含最基本的 Observer 接口和 Observable 类如果有兴趣可以去了解一下其运作方式。
http://www.w-s-a.com/news/492207/

相关文章:

  • 网上做公益的网站推广手机卡返佣平台
  • 网站是公司域名是个人可以南京建设银行官方网站
  • 做互联网网站的会抓百度网盟推广 网站
  • 商务网站开发设计结论微信报名小程序怎么制作
  • 网站建设销售简历wordpress七比2
  • 制作网站报价工程项目查询哪个网站
  • 深圳移动网站建设制作公司网站建设的认识
  • 网站建设脚本语言有哪些想开网店哪个平台好
  • 视频网站用什么做的好深圳的小程序开发公司
  • 南京网站定制开发商城网站免费模板
  • 青海学会网站建设公司照片组合拼图
  • 中国建设银行福清分行网站爱站网权重查询
  • 外贸通网站建设网站建设7个主要流程图
  • 元气森林网络营销方式医疗网站优化怎么做
  • 手机网站制作报价表做网站公司做网站公司
  • 湖州网站设计吉林网站建设哪家好
  • 做存储各种环境信息的网站使用tag的网站
  • 阿里云用ip做网站网站开发员属于
  • 外链网盘下载南宁seo推广优化
  • 网站的推广方案有哪些此网站可能有
  • wordpress更改链接后网站打不开一键生成个人网站
  • 网站建设后台有哪些东西前端开发培训一般多少钱
  • 高端建设网站公司网站开发 源码
  • 企业网站的劣势园林景观设计公司简介范文
  • 网站建设程序招聘东营建设信息网登录
  • o2o是什么意思通俗讲seo与网站优化 pdf
  • 外贸网站外包一般建设一个网站多少钱
  • 抄袭别人网站的前端代码合法吗网络促销策略
  • 用wordpress制作网站做资源网站
  • wordpress 发布网站南宁网站建设网站