遮蔽胶带和容错

Avatar of Chris Coyier
Chris Coyier

DigitalOcean 为您旅程的每个阶段提供云产品。立即开始使用 200 美元的免费额度!

摘录 Nicholas C. Zakas 的 每月精选 时事通讯(请立即注册!),经许可。

我最喜欢的东西之一是遮蔽胶带(也称为美纹纸胶带)。它看起来像一件很傻的东西:你在墙上贴一些胶带,以便在油漆时避免弄脏墙壁。这种胶带的粘性不强,因此可以从墙上撕下来而不会造成损坏。我喜欢遮蔽胶带的原因在于它背后的理念:绘画很凌乱,与其试图避免弄脏,不如用遮蔽胶带先弄脏,然后轻松清理。即使是最优秀、最有才华的画家也会偶尔溅到一些油漆,分心,或者以其他方式导致油漆涂到不该涂的地方。用遮蔽胶带覆盖油漆可能涂到的地方,然后撕掉胶带以创建干净、整洁的完成区域,这要快得多、容易得多,也减少了挫败感。这与软件工程有什么关系呢?

遮蔽胶带与一个名为 容错 的概念息息相关。与其期望一切顺利,不如期望会出现错误。当你期望会出现错误时,你做出的决定不是为了避免所有错误,而是为了在发生错误时轻松恢复。油漆涂到不该涂的地方了吗?如果该区域被遮蔽胶带覆盖,那也没关系。忘记贴遮蔽胶带了吗?现在这个错误就变得更严重了。作为软件工程师,我们可以用同样的方式思考我们编写的代码。

使你的代码具有容错性,就是要问自己一个问题:它会如何失败?不是它是否会失败,而是假设它会失败,以及它会以哪些方式失败?