软件构造 第七章第三节 断言和防御性编程

Posted masteryellow

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了软件构造 第七章第三节 断言和防御性编程相关的知识,希望对你有一定的参考价值。

第七章第三节 断言和防御性编程

断言:在开发阶段的代码中嵌入,检验某些"假设"是否成立。若成立,表明程序运行正常,否则表明存在错误。

 

可用于检查:

内部不变量:

表示不变量:

控制流不变量

方法的前置条件

方法的后置条件

 

  • 断言主要用于开发阶段,避免引入和帮助发现bug
  • 实际运行阶段, 不再使用断言
  • 软件发布阶段,禁用断言避免影响性能。

 

断言?Correctness

错误/异常处理?Robustness

 

Defensive Programming

对来自外部的数据源要仔细检查,例如:文件、网络数据、用户输入等

对每个函数的输入参数合法性要做仔细检查,并决定如何处理非法输入

以上是关于软件构造 第七章第三节 断言和防御性编程的主要内容,如果未能解决你的问题,请参考以下文章

软件构造 7-3 断言和防御性编程

软件构造第七章第一节 健壮性和正确性的区别

软件构造第六章第三节 面向可维护的构造技术

软件构造 第六章第三节 面向可维护的构造技术

软件构造 第三章第三节 抽象数据型(ADT)

软件构造第三章第三节 抽象数据型(ADT)