【发布时间】:2017-06-01 13:38:30
【问题描述】:
我在 Symfony 和其他项目中看到了这些接口。通常它们只包含一个 setter 和一个 getter,并且它们实现的类必须实现接口中的方法。
我在这里看不到附加值。为什么不简单地添加方法而不是拥有 4-5 个实现,因为您想向现有类添加可感知且功能强大的接口。
是的,您可能很容易看到一个类能够做什么,但您也可以根据方法看到这一点,它为您提供了更多接口(在我看来)并没有真正添加一些东西。
有人可以向我解释为什么人们在 PHP 中使用这些吗?我知道他们可能在 Java 中占有一席之地(我认为它起源于 Spring?)。但我没有看到这里的价值。
【问题讨论】:
-
这听起来像是在问接口的一般价值是什么。
-
@Carcigenicate 针对接口的类型提示以及与具体实现的可重用性/解耦是完全不同的。我在通用接口中看到了价值。我看不到连接 4-5 个接口来构建一个类的价值。
-
我只是想澄清一下。我不知道“感知”或“有能力”的接口应该代表什么,但是当你说“为什么不简单地添加方法......”时,这听起来像是有人反对使用一般的接口。 Nvm 如果不是这样的话。
-
接口很有用,与所使用的语言无关。我们无法真正告诉您拥有这么多接口是否有用,因为这取决于您拥有的架构、项目的规模及其可维护性目标