为什么要用接口?接口到底有什么好处?

接口在PHP中扮演着规范和契约的角色,定义了一组方法但不提供实现,允许类进行多态扩展。接口主要用于确保类间的统一交互,尽管PHP的接口约束较弱。Traits作为加强型接口,提供了代码复用的手段。本文探讨了接口的基本概念,包括其作为规范的可用性和契约的可控性,并指出PHP接口的局限性,如缺乏契约限制和内部接口的不足。接口在设计模式中发挥重要作用,是软件设计的重要工具。
摘要由CSDN通过智能技术生成

接口本身并不提供实现,只是提供一个规范。如果我们知道一个类实现了某个接口,那么就知道了可以调用该接口的哪些方法,我们只需要知道这些就够了。

PHP中,接口的语义是有限的,使用接口的地方并不多,PHP中接口可以淡化为设计文档,起到一个团队基本契约的作用。

接口就是这样,接口本身什么也不做,系统悄悄地在内部实现了接口的行为,所以只要实现这个接口,就可以使用接口提供的方法。这就是接口“即插即用”思想。我们都知道,接口是对多重继承的一种变相实现,而在讲继承时,我们提到了用来实现混入(Mixin)式的Traits,实际上,Traits可以被视为一种加强型的接口。

总结关于接口的几个概念:

接口作为一种规范和契约存在。作为规范,接口应该保证可用性;作为契约,接口应该保证可控性。

接口只是一个声明,一旦使用interface关键字,就应该实现它。可以由程序员实现(外部接口),也可以由系统实现(内部接口)。接口本身什么都不做,但是它可以告诉我们它能做什么。

PHP中的接口存在两个不足,一是没有契约限制,二是缺少足够多的内部接口。

接口其实很简单,但是接口的各种应用很灵活,设计模式中也有很大一部分是围绕接口展开的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值