本项是若干API设计技巧的总结,它们还不足以单独开设一个项。总的来说,这些设计技巧将有助于使你的API更易于学习和使用,并且比较不容易出错。
谨慎地选择方法的名称。 方法的名称应该始终遵循标准的命名习惯(第68项)。首要目标应该是选择易于理解的,并且与同一个包中的其他名称风格一致的名称。第二个目标应该是选择广泛认可的名称(如果存在的话)相一致的名称。避免使用长的方法名称。如果还有疑问,请参考Java库的API。虽然它们存在许多不一致的地方,考虑到这些库的规模和范围,这是不可避免的,但它还是得到了相当程度的认可。
不要过于追求提供遍历的方法。 每个方法都应该尽其所能。方法太多会使类难以学习、使用、文档化、测试和维护。对于接口而言,这无疑是正确的,方法太多会使接口实现者和接口用户的工作变得复杂起来。对于类和接口所支持的每个动作,都提供一个功能齐全的方法。只有当一项操作被经常用到的时候,才考虑为它提供快捷方式(shorthand)。如果不能确定,还是不要提供快捷方式为好。
避免过长的参数列表。 目标是四个参数,或者更少。大多数程序猿都无法记住更长的参数列表。如果你编写的许多方法都超过了这个限制,你的API就不太便于使用,除非用户不停地参考它的文档。现代的IDE会有所帮助,但最好还是使用简短的参数列表。相同类型的长参数序列格外有害。 用户不仅无法记住参数的顺序,而且,当他们不小心弄错了参数顺序时,他们的程序仍然可以编译和运行,只不过这些程序不会按照作者的意图进行工作。
有三种方法可以缩短过长的参数列表。第一种是把方法分解成多个方法,每