Logic - 代码的骨架

核心问题:

系统在所有情况下都是真的吗?

检查清单

写逻辑前,先问前置条件。
改状态前,先画状态机。
加字段前,先问非法组合。
测正常值后,必须测边界值。
遇到并发,先问不变量会不会破。
写高价值操作,必须考虑幂等。
复杂流程,先找反例。

Atlas 口诀

不变量是骨架。
状态机是轨道。
断言是护栏。
边界值是黑天鹅。
并发会撕开假设。

最终心法

Bug 的本质,往往是某个你以为永远为真的命题,在某个场景下变成了假。