如何判断你的 Python 代码实现是否合适?
这是 Python 之禅特别系列的一部分,重点介绍第十七和十八条原则:困难和容易。
一门语言并不是抽象存在的。每一个语言功能都必须用代码来实现。承诺一些功能是很容易的,但实现起来就会很麻烦。复杂的实现意味着更多潜在的 bug,甚至更糟糕的是,会带来日复一日的维护负担。
对于这个难题,Python 之禅 中有答案。
如果一个实现难以解释,那就是个坏思路 If the implementation is hard to explain, it’s a bad idea
编程语言最重要的是可预测性。有时我们用抽象的编程模型来解释某个结构的语义,而这些模型与实现并不完全对应。然而,最好的释义就是解释该实现。
如果该实现很难解释,那就意味着这条路行不通。
如果一个实现易于解释,那它可能是一个好思路 If the implementation is easy to explain, it may be a good idea
仅仅因为某事容易,并不意味着它值得。然而,一旦解释清楚,判断它是否是一个好思路就容易得多。
这也是为什么这个原则的后半部分故意含糊其辞的原因:没有什么可以肯定一定是好的,但总是可以讨论一下。
via: https://opensource.com/article/19/12/zen-python-implementation
作者:Moshe Zadka 选题:lujun9972 译者:wxy 校对:wxy