PHP面向对象之面向接口开发

MengDe6个月前PHP517

面向接口,是编程过程中一种常用的设计模式。

在某些加密类型语言中,例如JAVA、Go 分为服务端和调用端,比如打包的jdk等,服务端的程序员开发之后需要打包给其他程序员使用,他的代码加密的(不像PHP 可以直接看到源码里面有哪些方法),此时 就产生了这种开发设计模式,面向接口开发。

直接上代码:我将会在代码编写详细的注释。

<?php
/**
 * Created by MengDe.
 * @Author MengDe <9258405@qq.com>
 * @Date   2021/8/12 19:26
 * 面向接口编程案例
 */
//A写了个程序 打包给B 但是B不知道有哪些接口应该怎么做呢?
//首先 A定义了一个接口类A
interface ClassA
{
    //定义一个方法 定义了方法a
    public function a();
}

//然后 B再去定义类B 使用这个接口
class ClassB implements ClassA
{
    //    在类B里面 必须要实现a方法
    public function a()
    {
        // TODO: Implement a() method.
        echo '类B';
    }
}

class ClassC implements ClassA
{
    public function a()
    {
        // TODO: Implement a() method.
        echo '类C';
    }

}

//在其他程序员调用的时候 他就只需要看类A里面有哪些方法 而不用去关心方法是如何实现的
(new ClassB())->a();
(new ClassC())->a();

//另外 还有一个用途就是   得到了类A有哪些方法 可以强制的约束 例如缓存类
//定义一个公共的缓存接口
interface Cache
{
    public function set();
}

//此时 我们使用Redis作为缓存
class  RedisCache implements Cache
{
    public function set()
    {
        // TODO: Implement set() method.
        echo "写入缓存REDIS";
    }
}
class  MeCache implements Cache
{
    public function set()
    {
        // TODO: Implement set() method.
        echo "写入缓存Me";
    }
}
//在使用时 我们可以确定 缓存 里面必定有一个set方法

这就是我对面向接口开发的理解 如果有其他的问题,可以留言一起讨论!

相关文章

PHP面向对象之工厂模式

PHP面向对象之工厂模式

什么是面向对象的工厂模式,他到底有什么好处?今天从一个例子带你来体验一下。废话不多说:直接展示代码(大佬勿喷,狗头保命)<?php /**  * @author ...

PHP面向对象之多态

PHP面向对象之多态

何为面向对象之多态,且听我细细道来。在PHP开发中,可能对于多态的了解不是很深,但是JAVA不一样,下面是案例,代码注释仔细的讲解了何为多态。<?php /**  * @...

建立属于自己的composer包管理器

建立属于自己的composer包管理器

Composer的描述,我也不过多介绍,每当使用composer包,觉得他很方便,什么时候能够打造一个属于自己的composer包呢?那么今天带你一步一步的建立composer包,2020最新版,结合...

PHP接收前端Ajax Base64位图片文件处理

PHP接收前端Ajax Base64位图片文件处理

工作需要,之前做php后端都是用二进制流上传,现在突然给我换成了base64位上传  让我有点猝不及防....难受 香菇..废话补多少 直接上代码<?php /**  *...

PHP利用wkhtmltopdf操作

在项目下执行命令(注意关闭相应的禁言函数):composer require mikehaertl/phpwkhtmltopdf然后使用引用类并创建函数<?php us...

PHP面向对象之单例模式

何为单例模式,他的使用场景?他有哪些特点?让我来告诉你。如何实现一个单例模式的类,只需要四步:1.禁止外部new操作2.给外部开放获取方法3.禁止子类继承修改构造函数4.禁止克隆如何实现:<?p...