php接口隔离原则实例分析

yipeiwu_com6年前PHP代码库

本文实例讲述了php接口隔离原则。分享给大家供大家参考,具体如下:

使用多个专门的接口比使用单一的总接口要好。

一个类对另外一个类的依赖性应当是建立在最小的接口上的。

一个接口代表一个角色,不应当将不同的角色都交给一个接口。没有关系的接口合并在一起,形成一个臃肿的大接口,这是对角色和接口的污染。

“不应该强迫客户依赖于它们不用的方法。接口属于客户,不属于它所在的类层次结构。”这个说得很明白了,再通俗点说,不要强迫客户使用它们不用的方法,如果强迫用户使用它们不使用的方法,那么这些客户就会面临由于这些不使用的方法的改变所带来的改变。

<?php
interface A
{
  public function getAge();
}
interface B extends A
{
  public function getName();
}
class D implements A
{
  /**
   * interface @Override
   */
  public function getAge()
  {
    return 22;
  }
}
class C extends D implements B
{
  /*
   * interface @Override
   */
  public function getName()
  {
    return '勇哥';
  }
}
header("content-type:text/html;charset=utf-8");
$c = new \C();
echo $c->getName();
?>

运行结果:

勇哥

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP数据过滤的方法

在指南的开始,我们说过数据过滤在任何语言、任何平台上都是WEB应用安全的基石。这包含检验输入到应用的数据以及从应用输出的数据,而一个好的软件设计可以帮助开发人员做到:确保数据过滤无法被绕...

用PHP实现弹出消息提示框的两种方法

方法一:复制代码 代码如下:echo "<script>alert('提示内容')</script>";方法二:复制代码 代码如下:echo '<scrip...

kindeditor 加入七牛云上传的实例讲解

七牛云上传主要有两种: 服务端上传 前端上传,前端又分两种返回方式: 1).重定向返回,可以解决ajax跨域的问题 2).回调返回,七牛云先向服务端要返回数据,再由七牛云返回前端,解决不...

收集的php编写大型网站问题集

PHP以其易用性得到迅速的推广,但易用并不是说就能用好它,实际上许多程序员用它很容易的立一个个WEB应用系统,但又有多少人仔细的考虑过他们的代码,是否容易维护、是否足够健壮、否效率足够高...

php中将地址生成迅雷快车旋风链接的代码[测试通过]

在线演示地址:http://tools.jb51.net/tools/cs.php复制代码 代码如下:<?php function zhuanhuan() { $urlodd=ex...