zhenglu

导航

观察者模式总结

个人理解,观察者模式,就是当一个动作发生,就会有一个与其相关的程序作出响应。

应用范例,当你使用微博,有人@你,后台就会因为数据变动,给你发个通知。

还有一些重要软件一般会有一个或多个守护进程,当主进程被强制关闭,守护进程会立即激活主进程

 

<?php
	/*
		观察者模式,就是当你在街上看妹子,
		看到了苍老师,你是一个观察者,苍老师是一个被观察对象
		苍老师看你小伙挺帅,给了你一个kiss,你并为此做出一些反应,
		这就是一个观察者模式发生的全过程
	*/

	//观察者接口
	interface Observer{
		function daJiao();
	}
	//被观察者
	interface Subject{
		function addHeart($obj);
	}

	//你码了一天的代码,来到街上看妹子
	class You implements Observer{
		function daJiao(){
			echo "Ya mei dei ~";
		}
	}
	//我靠 那不是苍老师!
	class CangLaoShi implements Subject{
		private $heart = "";
		//你的惊呼引起了她的注意,她对你一见钟情,于是你就进入了她婶婶的脑海里
		function addHeart($obj){
			$this->heart = $obj;
		}
		function kissYou(){
			//苍老师叫你过去,然后。。。
			echo "Hey Boy Come Here! 么么哒 ~ <br/>";
			//她心中的你觉得好爽,于是大叫
			$this->heart->daJiao();
		}
	}

	//new一个苍老师
	$CangLaoShi = new CangLaoShi();
	//将你放在她心里
	$CangLaoShi->addHeart(new You());
	//让苍老师来亲你
	$CangLaoShi->kissYou();


 

posted on 2013-07-08 22:34  zhenglu  阅读(173)  评论(0)    收藏  举报