77得票6回答
在SOLID中,SRP和ISP有什么区别?(单一职责原则和接口隔离原则)

SOLID中的“接口隔离原则”与“单一职责原则”有何不同? 维基百科中对于SOLID的解释为: 接口隔离原则将非常庞大的接口分割成更小的特定接口,让客户端只需要知道他们感兴趣的方法。 但是,在我看来,这听起来就像是将 SRP 应用到接口和类上。毕竟,如果一个接口只负责一个概念,那...

30得票3回答
里氏替换原则和接口隔离原则的区别

里氏替换原则(LSP)和接口隔离原则(ISP)之间是否有任何核心区别?最终,两者都主张使用常见功能来设计接口,并在需要特殊功能时引入新的接口。

28得票3回答
接口隔离原则只是单一职责原则的替代品吗?

接口隔离原则仅是单一职责原则的替代方案吗? 我认为,如果我的类符合SRP,就没有必要提取多个接口。 因此,当我们不得不打破SRP时,ISP似乎是一种解决方案。 我说得对吗?

27得票7回答
接口隔离原则的背后推理是什么?

接口隔离原则(ISP)指出,许多客户端特定的接口优于一个通用接口。为什么这很重要?

26得票6回答
接口隔离原则 - 面向接口编程

我在阅读关于SOLID和其他设计原则的内容。我以为ISP与“面向接口编程而不是实现”是相同的。但看起来这些是不同的原则? 它们之间有什么区别吗?

22得票9回答
默认实现的设计模式:空方法实现

有没有一个特定的设计模式,描述了这样一种情况:提供非抽象默认实现,它使用空的NO-OP实现来实现接口上的所有或某些方法。这样做是为了减轻子类实现它们自己可能不需要/使用的方法的负担: public interface MyInterface { public void doThis(...

15得票2回答
接口隔离原则能够应用于Python对象吗?

为了将SOLID原则应用到一个有机生长且需要重构的Python项目中,我正在努力理解如何将接口隔离原则应用于Python语言,当接口不作为一种语言特性存在时?

13得票4回答
复合模式符合SOLID原则吗?

在组合模式中,叶子节点实现了组件接口,包括“Add”、“Remove”和“GetChild”方法,但是叶子节点永远不会使用这些方法。这似乎违反了接口隔离原则。 那么使用组合模式是否符合SOLID原则呢? 组合模式链接:http://www.dofactory.com/Patterns/Pa...

7得票2回答
继承和接口隔离原则

如果从一个存在未使用方法的类继承,是否违反了接口隔离原则? 例如: abstract class Base { public void Receive(int n) { // . . . (some important work) OnMs...

7得票4回答
接口隔离原则和Java 8中的默认方法

根据接口隔离原则,客户端不应被强制实现不需要的接口方法,因此我们应该定义接口以实现逻辑分离。然而,在Java 8中引入的"default"方法提供了在Java接口中实现方法的灵活性。看起来Java 8已经提供了灵活性,使接口可以具有一些与其核心逻辑无关的方法,但具有一些默认或空实现。这是否违反...