【发布时间】:2014-07-12 01:27:00
【问题描述】:
我有时会偶然发现公共 API 方法上的方法命名决定。
变体 A:
public void play();
public void stop();
public void pause();
变体 B:
public enum CallType {
PLAY,
STOP,
PAUSE
}
public void execute(CallType type);
我认为对于 API 客户端来说,拥有变体 A 的接口更方便,因为不需要参数(和检查!)。
但我也认为变体 B 的公共接口也更小,开发人员的任务更容易。
您对这些方法有何看法?
【问题讨论】:
-
请避免询问主要基于意见的问题。参考stackoverflow.com/help/dont-ask。
-
支持(或反对)B 的一个论点是,如果
CallType的一组值发生变化,那么可能会出现运行时问题,而不是实现类的编译时故障。
标签: java methods fully-qualified-naming