【View】组织工程学3 - 错误处理

46 阅读2分钟

错误处理

当一个函数中存在错误时,我们可能会一层一层的向上抛出,直到最顶层才进行处理,这是一种错误的实践。不要向上传递错误是一个【原则】。错误应该在靠近他的位置被解决掉,而不应该一直上抛。

为什么错误应该在靠近错误的位置解决掉?类比成一个组织就很容易理解了:基层员工的问题如果一直不在基层解决,而是一直上抛到ceo那里解决,这个公司还可能好么。同理,在组织中的错误应该在组织内就充分解决掉,而不应该抛到组织外。

来自ceo的命令可能会透传到下面的组织中,可以类比成ctx上下文。ctx透传其实和实际在组织中的case一样,可能会携带越来越多的参数,导致上下文臃肿不堪,太多的信息是导致工程效率低的原因,因为ctx过大在函数间的传递效率就会更差。因此在组织中也是一样,不要携带过多的命令,不要试图包装过多的命令,只会适得其反。一个好的实践是高层的命令应该是抽象的,而越传递应该越具体。如果来自高层的命令是具体的,那么只可能出现外行指导内行,蒋委员长就是过多干预军事行动而导致了失败。

清单革命

清单是避免错误的好实践。其中最常见的就是当在上线的时候,我们会有上线清单,我们会有check清单。清单帮助我们记住很多东西。电脑中的磁盘就是一种清单,我们不可能把所有的东西放进内存中对吧。人脑应该是类似CPU而不是磁盘,所以我们需要清单这种东西来帮助我们进行记忆。