package com.mode;
/*
接口中的方法尽量少。也就是说,我们要为各个类建立专用的接口,
而不要试图去建立一个很庞大的接口供所有依赖它的类去调用。
本例子中,将一个庞大的接口变更为3个专用的接口所采用的就是接口隔离原则。
采用接口隔离原则对接口进行约束时,要注意以下几点:
1.接口尽量小,但是要有限度。
2.为依赖接口的类定制服务,只暴露给调用的类它需要的方法,
它不需要的方法则隐藏起来。只有专注地为一个模块提供定制服务,
才能建立最小的依赖关系。
3.提高内聚,减少对外交互。使接口用最少的方法去完成最多的事情。
*/
interface I1 {
public void method1();
}
interface I2 {
public void method2();
public void method3();
}
interface I3 {
public void method4();
public void method5();
}
class A {
public void depend1(I1 i) {
i.method1();
}
public void depend2(I2 i) {
i.method2();
}
public void depend3(I2 i) {
i.method3();
}
}
class B implements I1, I2 {
public void method1() {
System.out.println("类B实现接口I1的方法1");
}
public void method2() {
System.out.println("类B实现接口I2的方法2");
}
public void method3() {
System.out.println("类B实现接口I2的方法3");
}
}
class C {
public void depend1(I1 i) {
i.method1();
}
public void depend2(I3 i) {
i.method4();
}
public void depend3(I3 i) {
i.method5();
}
}
class D implements I1, I3 {
public void method1() {
System.out.println("类D实现接口I1的方法1");
}
public void method4() {
System.out.println("类D实现接口I3的方法4");
}
public void method5() {
System.out.println("类D实现接口I3的方法5");
}
}
public class Client {
public static void main(String[] args) {
A a = new A();
a.depend1(new B());
a.depend2(new B());
a.depend3(new B());
C c = new C();
c.depend1(new D());
c.depend2(new D());
c.depend3(new D());
}
}
原文: http://blog.csdn.net/zhengzhb/article/details/7296921
分享到:
相关推荐
- 定期审查接口,确保它们仍符合 ISP 原则,随着项目的发展,可能需要重新调整接口设计。 接口隔离原则是软件设计中的一种良好实践,它有助于提高代码质量,降低维护成本,增强系统的可扩展性和可维护性。理解和...
接口隔离原则(Interface Segregation Principle,ISP)是C++中的一个重要设计原则,它旨在降低类之间的耦合性,提高系统的灵活性和可维护性。本文将详细介绍接口隔离原则的定义、优点、实现方法和应用实例。 定义 ...
接口隔离原则(Interface Segregation Principle,简称ISP)是软件设计中的一个重要原则,它在面向对象的设计模式中占有核心地位。这个原则由罗伯特·C·马丁(Robert C. Martin)在其著作《Clean Architecture》中...
接口隔离原则(Interface Segregation Principle, ISP)是面向对象设计的SOLID原则之一,它强调了接口设计的灵活性和针对性。ISP指出,一个类不应该被迫依赖它不需要的接口,即类之间的依赖关系应当建立在最小化的...
### 接口设计原则和方法 #### 设计原则 1. **充分理由**:创建新的接口之前,必须确保其存在有充分的理由。这意味着接口的设计应当基于明确的需求而非随意为之。无意义的接口不仅增加系统的复杂性和维护成本,还...
面向对象编程中,接口隔离原则(ISP)是五大设计原则之一,它建议不应该强迫客户端依赖于它们不用的接口。在PHP中实现ISP,可以避免不必要的依赖,提高代码的可维护性和灵活性。下面详细说明接口隔离原则的概念、...
接口隔离原则是面向对象设计中的一个重要原则,它强调的是设计接口时应尽可能保持接口的专注性,避免让接口承担过多职责,从而减少不必要的耦合。这一原则的核心思想是:一个类不应该被迫依赖于它不需要的方法,即...
本示例主要探讨接口设计的重要性、原则以及如何在实际项目中应用。 首先,接口是面向对象编程中的一个关键概念,它定义了一组方法的集合,但不提供具体实现。这样做的好处在于实现了抽象,让类与类之间的耦合度降低...
Dubbo服务接口设计原则 Dubbo服务接口的设计原则是基于Dubbo的分布式系统架构的关键组件,旨在提供高效、可靠、灵活的服务接口设计指南。Dubbo服务接口的设计原则可以分为三个方面:设计方式、接口类型和设计原则。...
以下将详细介绍接口设计的一些核心概念、原则和实用技巧。 首先,我们需要明确接口的基本概念。接口在编程中是一个规范,定义了一组可供其他对象或组件调用的方法或功能。它充当了不同模块间通信的桥梁,使得系统各...
1. API 接口设计原则:明确 API 接口的设计原则,包括RESTful API 设计原则、参数设计原则、错误处理原则等。 2. 数据格式规范:规定 API 接口中使用的数据格式,包括 JSON 格式、日期格式、金额格式、时间格式等。...
在IT行业中,接口设计是软件开发过程中的关键环节,它涉及到不同系统、模块或服务之间的交互方式。"接口概要设计说"文档通常用于详细阐述这些接口的基本结构、功能和通信协议,为后续的详细设计和实现提供指导。以下...
接口与设计原则
"接口设计说明书模板详解" 在软件开发过程中,接口设计是非常重要的一步骤,它对整个项目的成功至关重要。一个良好的接口设计可以提高系统的可维护性、可扩展性和可重用性,而一个不良的接口设计则可能会导致项目的...
实现拥抱变化的方式很多,设计大师们为我们总结出23种设计模式,但是在项目实践中有效地使用设计模式是个难题,因此大部分业务设计很难采用它们来实现,我们在项目中尽量采用这六大设计原则,经常使用这些原则来检验...
接口隔离原则建议我们避免让客户端依赖它们不使用的接口方法。如果一个接口太大,包含了许多不相关的功能,我们应该将其拆分为多个更小、更具体的接口。比如,一个大而全的订单接口可以拆分成支付接口、发货接口和...
本文将深入探讨系统接口设计的各个方面,包括接口设计原则、接口定义与分类、接口设计模式以及接口实现方式。 首先,接口设计原则是指导接口设计的核心准则。高内聚、低耦合是设计中的金科玉律,旨在减少系统间的...
**趣图解析**:接口隔离原则的图解可能会展示多个小接口代替一个大接口的情形,每个客户端只需实现它所关心的接口。 ##### 5. 依赖倒置原则(Dependency Inversion Principle, DIP) **定义**:依赖倒置原则主张...
4. **接口隔离原则(ISP)**:客户端不应该被迫依赖它不使用的方法。如果一个接口包含客户端不需要的方法,应该拆分为多个更小的接口。这有助于减少类之间的耦合。 5. **依赖倒置原则(DIP)**:高层次模块不应该...
软件体系结构七大设计原则是构建高质量软件系统的基础,它们分别是:单一职责原则、开闭原则、里氏代换原则、依赖倒转原则、接口隔离原则、迪米特法则和合成聚合原则。这些原则旨在提高软件的可维护性、可扩展性和可...