什么是防御性编程
防御性编程是一种编程习惯,是指预见在什么地方可能会出现问题,然后创建一个环境来测试错误,当预见的问题出现的时候通知你,并执行一个你指定的损害控制动作,如断言、停止程序执行,将用户重指向到一个备份的服务器,或者开启一个你可以用来诊断问题的调试信息。
防御性编程技巧
1> 使用好的编码风格和合理的设计
2> 不要仓促地编写代码
3> 不要相信任何人
4> 编码的目标是清晰,而不是简洁
5> 不要让任何人做他们不该做的修补工作
6> 编译时打开所有警告开关
7> 使用静态分析工具
8> 使用安全的数据结构
9> 检查所有的返回值
10>审慎地处理内存(和其他宝贵的资源)
11>在声明位置初始化所有变量
12>尽可能推迟一些声明变量
13>使用标准语言工具
14>使用好的诊断信息日志工具
15>审慎地进行强制转换
16>其他
a> 审慎地进行强制转换
b> 提供默认的行为
c> 检查数值的上下限
详细: