方法签名设计原则:单一职责,简单易用,最少知识原则,结果明确且不丢失信息。
一个方法有返回值,方法名,方法体,方法参数。 因此,设计并写好一个方法要考虑这些要素要如何处理。这里主要整理一些关于返回值的处理经验。
- 返回值不要存在多种形式,或者存在双重意义,示例如下:
Null与List的区别,关于这一点,在effective java中第43条也有提及。
Long与long,返回数量时,null是什么意思?数量可能为null吗?
- 不丢失方法调用结果信息
Update语句应返回更新影响条件,不管调用者是否需要这些信息
- 抛送错误信息时,有两种形式Result<T>与异常,不要在一个方法内混用。倾向于rpc调用使用Result<T>,应用服务内则使用异常来抛送错误