使用场景
假设项目经理让我们写了一个登陆接口,咔咔擦擦写完了
第二天让我们加入统计登陆次数,然后在后面加代码
第三天让我们判断登陆地区,又在后面加代码
第四天让我们在用户登陆后推送活动,再再后面加代码
第N天,这个接口已经杂乱到没人想维护了
我们需要让项目保持高内聚低耦合,就可以用到观察者模式(也不是非要,看需求)
概念
观察者,观察者,首先要有个被人观察的角色,这是唯一的,然后会有无数个观察者去看她,可以说是一群人在围观一个人,既然有无数个观众,那总得有个东西记录有哪些观察者,那就应该有一个类似于数组一样来储存所有观察者,总结就是一个被观察者,无数个观察者,再有一个容器记录
★我的php高级学习交流社群「点击」管理准备好的社群专属资料:BAT等一线大厂进阶知识体系(相关学习资料以及笔面试题)以及不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货
代码示例
- 接口示例
// 主题接口
interface