JZOffer之高质量的代码

规范性
合理的变量和函数命名,保证可读性,最好用完整的英文单词组合。
完整性

  1. 设计测试用例:

    功能测试(除了常规输入之外,还有题目中的范围,比如大数问题,就需要用字符串或者数组来表示大的数字,以确保不会溢出)
    边界测试(结束循环、递归的便捷条件是否正确)
    负面测试(考虑错误输入)

  2. 错误处理:

    返回值
    返回全局变量
    异常
    鲁棒性
    鲁棒性体现了容错性,表示当出现了与预期的条件不一样时的情况的处理。

  3. 输入参数检查
    比如,指针是否为空,字符串是否为空,路径是否存在,超出范围怎么办?
  4. 针对题目提问“如果不,那么”
显示 Gitment 评论