位置: 编程技术 - 正文

学习php设计模式 php实现观察者模式(Observer)(php设计思路)

编辑:rootadmin

推荐整理分享学习php设计模式 php实现观察者模式(Observer)(php设计思路),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php 设计模式 鸟哥,php常用的设计模式在开发中的实例,php 设计模式 鸟哥,php常用设计模式(大总结),php常用设计模式(大总结),php 设计模式 鸟哥,php 设计模式 鸟哥,php设计模式六大原则,内容如对您有帮助,希望把文章链接给更多的朋友!

学习php设计模式 php实现观察者模式(Observer)(php设计思路)

一、意图定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新【GOF】又称为发布-订阅(Publish-Subscribe)模式、模型-视图(Model-View)模式、源-监听(Source-Listener)模式、或从属者(Dependents)模式二、观察者模式结构图

三、观察者模式中主要角色抽象主题(Subject)角色:主题角色将所有对观察者对象的引用保存在一个集合中,每个主题可以有任意多个观察者。抽象主题提供了增加和删除观察者对象的接口。抽象观察者(Observer)角色:为所有的具体观察者定义一个接口,在观察的主题发生改变时更新自己。具体主题(ConcreteSubject)角色:存储相关状态到具体观察者对象,当具体主题的内部状态改变时,给所有登记过的观察者发出通知。具体主题角色通常用一个具体子类实现。具体观察者(ConcretedObserver)角色:存储一个具体主题对象,存储相关状态,实现抽象观察者角色所要求的更新接口,以使得其自身状态和主题的状态保持一致。四、观察者模式的优点和缺点观察者模式的优点:1、观察者和主题之间的耦合度较小;2、支持广播通信;观察者模式的缺点:1、由于观察者并不知道其它观察者的存在,它可能对改变目标的最终代价一无所知。这可能会引起意外的更新。五、观察者模式适用场景1、当一个抽象模型有两个方面,其中一个方面依赖于另一个方面。2、当对一个对象的改变需要同时改变其它对象,而不知道具体有多少个对象待改变。3、当一个对象必须通知其它对象,而它又不能假定其它对象是谁。换句话说,你不希望这些对象是紧密耦合的。六、观察者模式与其它模式中介者模式(Mediator):通过封装复杂的更新语义,ChangeManager充当目标和观察者之间的中介者。单例模式(singleton模式):ChangeManager可使用Singleton模式来保证它是唯一的并且是可全局访问的。七、观察者模式PHP示例

标签: php设计思路

本文链接地址:https://www.jiuchutong.com/biancheng/281560.html 转载请保留说明!

上一篇:PHP判断手机是IOS还是Android(php判断ip是否属于某个区段)

下一篇:学习php设计模式 php实现备忘录模式(Memento)(php 设计模式)

  • 换了公司后个税还要申请申报吗
  • 减免的养老保险怎么走账
  • 息税前利润变动率
  • 财务会计和预算会计是两套账吗
  • 开票税金和实际交的税金差额怎么办
  • 服务不动产扣除项目怎么填
  • 卖废品开发票开什么货物名称
  • 如何合理把公司的钱拿出来
  • 两免三减半的范围
  • 已经认证的抵扣联不见了,怎么办?
  • 非广告公司可以开广告费发票吗?
  • 收到转账支票存支票背书处怎么填写
  • 增值税与实际缴纳不符
  • 分公司背书给总公司
  • 办税员实名认证变更
  • 现金流量表中现金流量净额怎么算
  • 汽车行业销售折让
  • 会议费税前扣除最新税务规定
  • 增值税逾期申报流程
  • 抵扣联复印件可以做账吗
  • 收到退回的投标保证金
  • 外资公司办事处职能
  • 免税不能开专票
  • 费用发票可以抵扣吗
  • 微pe工具箱怎么用
  • video标签自动播放可以带声音吗
  • 入库的原材料属于什么科目
  • 应收债权换入无形资产
  • 分包工程的税金怎样处理
  • wordpress自定义文章类型
  • PHP:getimagesize()的用法_GD库图像处理函数
  • 阿根廷圣克鲁斯省
  • idea实用技巧
  • 印花税契税入固定资产吗
  • 股权转让不用交税
  • 公司购买led屏幕做到什么费用
  • 出口退税转内销的损失
  • linux 自启
  • 企业固定资产如何查询
  • 应交增值税为负数是什么意思
  • 在建工程的预付款账务处理
  • 企业所得税退还账务处理
  • 合并报表存货抵消
  • 工业企业外购存货的入账价值一般包括()
  • 股息分红要交多少税
  • 委托代销业务的会计分录
  • 期初应收账款对应什么科目试算平衡
  • 置换房产流程
  • 差旅费用包含哪些
  • 人力公司开的代驾发票
  • 查账征收的含义
  • 预算会计年末如何结账
  • 主营业务税金及附加借贷方向
  • mysql 5.7.5 m15 winx64安装配置图文教程
  • bios怎么更改硬盘格式
  • ubuntu鼠标不能移动
  • linux系统中怎么编辑文件
  • linux系统怎么维护
  • 如何彻底解决win10自动重启
  • three.js dispose
  • js new option
  • 将jquery.qqFace.js表情转换成微信的字符码
  • perl 计算
  • jquery div innerhtml
  • sql怎么设置自增列
  • css怎么更换图片
  • 改变的拼音
  • 狗刨怎么学
  • javascript对象主要包括
  • python连接Oracle数据库
  • json读取字符串
  • javascript程序设计教程
  • ca证书密码是什么
  • 群租房怎么举报电话
  • 个人出租商铺个人所得税计算
  • 辽宁省国家税务总局
  • 残疾人可以免增值税吗
  • 设立新的机构或开办新的业务
  • 人文考试多少分合格
  • 增值税税控开票软件怎么下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设