以下三条关于优化的格言是每个人都应该知道的。
第一,比起其他任何单一的原因(包括盲目的愚蠢),很多计算上的过失都被归昝于效率(不一定能实现)。 —William A. Wulf [Wulf72]
第二,不要去计较效率上的一些小小的得失,在 97% 的情况下,不成熟的优化才是一切问题的根源。 —Donald E. Knuth [Knuth74]
第三,在优化方面,我们应该遵守两条规则:
规则 1:不要进行优化。
规则 2 (仅针对专家):还是不要进行优化,也就是说,在你还没有绝对清晰的未优化方案之前,请不要进行优化。 —M. A. Jackson [Jackson75]
所有这些格言都比 Java 编程语言早了 20 年。它们告诉我们关于优化的一个深刻的事实:很容易弊大于利,尤其是如果过早地进行优化。在此过程中,你可能会生成既不快速也不正确且无法轻松修复的软件。