函数是软件产品的细胞。如何写好一个命名规范,功能清晰,鲁棒性强的函数,是一个合格程序员的基本素养。
条例1: 一定要对非法输入做错误处理。
写函数最忌讳的就是不对非法输入做错误处理。这样的函数放到一个庞大复杂的系统中将是灾难。不是宕机就是出core或者各种错误的结果。曾经看过一篇文章,说是cpu感触的1纳秒,就相当于人类感触的1秒。一次宕机的时间,对于cpu来说,相当于一个文明的终结。
if判断,assert假设,都是很好的校验手段。
条例2:对各种边界情况做自测
自测花的时间,比如不自测导致返工的时间,要少的多。编程珠玑 里面就提到了脚手架测试方法。
条例3:明确输入和输出的映射关系
函数的功能尽可能单一,这样才能保证函数的返回值简单可靠。system函数我觉得就是一个反例,因为你很难通过这个函数的返回值做进一步的错误处理。