类的设计--接口

需要一个类提供某些功能,这些功能可能有不同的实现方式,可以把它设计为接口。 

 

1.首先明确接口职责范围,职责需要高内聚的,即相关性的职责,无关的职责不应该加进来。

   

2.按照分析好的职责范围定义接口

 

3.建立类,简单的对接口实现:类中建立需要的方法,每个方法功能单一、简洁,方法内用伪代码简单写一下,因为可能会重构

 

4. 将多个实现类的共用方法抽取而形成一个抽像类。

 

5.a.标注实现类扩展抽像类并实现接口

    或者

   b.如果抽像类能够实现接口的大部分功能,则标注抽像类实现接口,实现类扩展抽像类。

 

7.重构:在代码实现中可能对功能有进一步深入的理解,可能需要调整类的结构或依赖或接口。

 

8.核查是否有过多的依赖,是否实现类职责多于接口的职责等等

 

9.接口实现类的方法的伪代码改为实际的代码 

 

10.接口测试

 

接口的使用方式:

  1.静态使用接口:

      类A只是使用该接口的一种实现方式。表现为接口是类A的成员变量。

      依赖注入 可以使用spring等。

 

   2.动态的使用接口:

       由于类A处理的数据结构不同,而需要使用不同的接口实现类。

       a方式:每一个枚举实例对应一个接口实现,建立静态工厂类根据枚举实例获取接口,前提接口实现数是相对固定,并枚举类型为类A所知。

      

 
类的设计--接口
  b.方式:

  

   
类的设计--接口