首页 > Web开发 > 详细

php设计模式的六大原则(一):单一职责原则

时间:2015-11-13 17:11:12      阅读:335      评论:0      收藏:0      [点我收藏+]
<?php
//单一职责原则

class Modem{

	public function dial(){
	
		return "dialing....";
	}

	public function hangup(){
	
		return "hangup!!!";
	}

	public function send(){
	
		return "send info!!!";
	}

	public function receive(){
	
		return "received!!!";
	}

}

class Client{

	public static function doing(){
	
		$modem = new Modem();
		echo $modem -> dial(); //拨号
		echo $modem -> hangup(); //挂断
		echo $modem -> send(); //发送
		echo $modem -> receive(); //接收
	}
}

//如果要修改接收方式的话,所有依赖modem的模块都要修改了


interface IConnection{

	public function dial();

	public function hangup();

}


interface ICommunication{

	public function send();

	public function receive();

}


class Modem implements IConnection, {

	public function dial(){

		return "dialing....";
	}

	public function hangup(){

		return "hangup!!!";
	}
}

class Communication implements ICommunication{

	public function send(){

		return "send!!!";
	}

	public function receive(){

		return "received!!!";
	}
}

class Client{

	 static public function doing(){
	
		$m = new Modem();
		$c = new Communication();
		echo $m -> dial(); //拨号
		echo $m -> hangup(); //挂断
		echo $c -> send(); //发送
		echo $c -> receive(); //接收
	}

}

Client :: doing();

?>

单一职责原则核心:一个类只完成它应该完成的职责。

一个类只完成它应该完成的职责,不能推诿责任,也不可越殂代疱,不能成为无所不能的上帝类。如果你的团队中实施宽松的“代码集体所有权”,在编码的过程中出现许多人同时修改(维护)同一个类的现象,而且成员之间的沟通不够及时,主动和畅通的话,那么时间一长,就很可能出现“承担过多职责”的上帝类。这时,提炼基类/接口和提炼类重构将能帮助我们消除或减轻这种设计臭味。

php设计模式的六大原则(一):单一职责原则

原文:http://my.oschina.net/shyl/blog/530043

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!