我目前正在做一些API设计工作,涉及到一些接口(interface)的规范作为抽象,稍后将由各种具体类实现。
碰巧,我正在使用 Java,但我认为这个问题与支持类似接口(interface)概念的任何语言都相关。
我注意到通常有一个选项:
- 做一个大界面,方法齐全
- 创建多个接口(interface),每个接口(interface)包含所有方法的一个子集(单个具体类可能必须实现多个或所有这些接口(interface))
每种方法的优点/缺点是什么?
最佳答案
拆分接口(interface)的优点是您可以将方法分成一组有意义的职责。缺点是您的接口(interface)现在被分成了一堆可能由一个类实现的较小的接口(interface)。
我会建议将界面拆分到有助于提高可读性的地方,而不是进一步。如果您有一个实现 10 个接口(interface)的类,要么这些接口(interface)需要合并为一个,要么该类可能承担了很多责任,它确实需要两个或更多类。
关于java - 获得正确的接口(interface)粒度级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4759841/