说这个话题之前先讲一个比较高端的思想--'依赖倒置原则'
"依赖倒置是一种软件设计思想,在传统软件中,上层代码依赖于下层代码,当下层代码有所改动时,上层代码也要相应进行改动,因此维护成本较高。而依赖倒置原则的思想是,上层不应该依赖下层,应依赖接口。意为上层代码定义接口,下层代码实现该接口,从而使得下层依赖于上层接口,降低耦合度,提高系统弹性"
上面的解释有点虚,下面我们以实际代码来解释这个理论
比如有这么条需求,用户注册完成后要发送一封邮件,然后你有如下代码:
先有邮件类'Email.class.php'
classMail{
publicfunction send()
{
/*这里是如何发送邮件的代码*/ }
}
然后又注册的类'Register.class.php'
class Register{
private$_emailObj;
publicfunction doRegister()
{
/*这里是如何注册*/$this->_emailObj =newMail();
$this->_emailObj->send();//发送邮件 }
}
然后开始注册
include'Mail.class.