读书笔记四
“偏执乐观主义”观点为程序员对待编程过程中的问题提供了一种独特而有效的思维方式。
“你不可能写出完美的软件”,这一观点让我意识到在编程中,错误是不可避免的。无论我们多么细心和有经验,都可能会在代码中留下漏洞。因此,我们需要以一种“偏执”的态度来对待代码,时刻准备着迎接可能出现的错误。这种偏执体现在对输入的严格检查、对边界情况的处理等方面。例如,在编写一个接受用户输入的程序时,不能假设用户会按照预期的格式输入数据,应该对输入进行全面的验证,防止程序因为非法输入而崩溃。
然而,仅仅是偏执还不够,我们还需要保持乐观。即使知道可能会有错误,我们也要相信自己有能力解决它们。当遇到问题时,不能陷入绝望,而是要积极地寻找解决方案。书中提到的“通过合约进行设计”就是一种乐观的编程策略。通过明确函数或模块的前置条件、后置条件和不变式,我们可以在编写代码时就考虑到可能出现的问题,并在运行时进行检查。这种方式就像是与代码签订了一份契约,双方都要遵守约定,如果出现违反契约的情况,就可以及时发现并处理错误。
同时,“断言式编程”也是这种思维方式的体现。在代码中合理地使用断言,可以在开发和测试阶段快速发现不符合预期的情况。比如在一个复杂的计算函数中,在关键步骤插入断言,检查中间结果是否在合理的范围内,如果断言失败,就可以迅速定位到问题所在。
“偏执乐观主义”教会我们在编程中既要谨慎地预防错误,又要积极乐观地应对和解决错误,使我们在编写代码的过程中更加稳健。

浙公网安备 33010602011771号