1.鲁棒性简介
鲁棒是因为Robust的音译,也可叫做健壮性。鲁棒性的意思就是,指程序能够判断输入是否合乎规范要求,并对不符合要求的输入予以合理的处理。
容错性是鲁棒性的一个重要体现,当输入为某些负值条件时,程序是否能够得到合理的输出。
提升代码鲁棒性的有效途径是进行防御性编程。那么什么是防御性编程呢? 防御性编程是一种编程习惯,指预见在什么地方可能会出现问题,并为这些可能出现的问题制定处理方式。比如,当你要打开某一个文件时,发现文件不存在,可以提示用户检查文件名和路径;当服务器连接不上时,可以连接备用服务器等。
在面试当中,最简单、最实用的防御性编程就是在函数入口处添加代码来验证用户的输入是否符合要求。比如,函数输入为list,那么若为空列表呢?输入为一个dict,那么么若为空字典呢?
2.总结
总之呢,在编程的时候一定要尽量考虑到各种可能会出现的情况,并为每种情况制定合理的处理方式。
3.参考文献
[1]剑指offer丛书