检查函数正确性的问题:
这个问题考虑了很多次,在过去写的程序里面没有统一的做法。
考虑如果调用者负责输入参数的正确性,就要求接口足够简单,这样可以很容易的判断输入的正确性。
而如果接口不够简单这样的假设无法成立,因为只有调用者十分熟悉接口才能正确的输入参数。反过来说这个是个矛盾,如果接口复杂是接口设计者的问题。而接口足够简单又有谁能保证哪。
考虑如果接口实现者提供输入参数的检查,调用者会安心吗?
所以到现在为止看到的代码都是混合存在参数检查的,但是也造成了很多无用的操作对程序的可读和运行速度造成了印象。在项目或者产品启动的时候就应该确定如何检查参数正确性是很有必要的。