知识卡片

断言守假设

普通读书笔记卡 · 1878.b

内容

断言适合表达“不可能发生”的内部假设。它不是用户输入校验,也不应带副作用;好的断言像路标,告诉维护者算法依赖哪些前提。

参考来源

- 位置:《程序员修炼之道:通向务实的最高境界(第2版)》第4章《务实的偏执》话题25「断言式编程」(源文件:_epub-src/text/part0013_split_003.html) - 结论依据:原文明确断言用于检查"绝不会发生"的假设,并警告不要用断言替代真正的错误处理、不要让断言带副作用,直接支持卡片论点。 - 原始内容:"无论何时,你发现自己在想"当然这是不可能发生的"时,添加代码来检查这一点。……提示39 使用断言去预防不可能的事情……不要使用断言来代替真正的错误处理。……如果对条件做评估本身有副作用,就可能发生这样的事情。"