主要观点:总体而言,“最佳实践”弊大于利,并非因其本身是坏建议,而是多被不同类型的狂热者、白痴和混蛋当作权威论据滥用,或被缺乏判断适用性能力的 inexperienced programmers 采用。实际情况是应通过探讨实际论点来找到当下情况的最佳解决方案,这在编程及其他领域都适用。“最佳实践”不一定是坏建议,但很多只是“某人说的东西”或“个人观点”。
关键信息:
- 以 Postel 的“定律”为例,其在特定时期特定情境下可能是好建议,但作为普遍适用于所有协议或软件开发的概念则大多是坏主意,且多年来一直有争议。
- 很多所谓“最佳实践”被过度绝对化,如“不要使用全局变量”“不要使用无结构 GOTO”“不要重复自己”“12 factor app”“SOLID”等,实际情况并非如此绝对,有时按其做反而不好。
- 反对“最佳实践”常遭遇类似“不遵循最佳实践就是写坏代码”的指责,存在一种让人自我怀疑的效果,就像在安全领域的安全谬误一样,反对安全规定很难,因为看起来反对的是安全。
重要细节:
- 各种类型的人滥用“最佳实践”,如各种狂热者等,而实际应通过探讨实际论点来找到最佳方案。
- 具体列举了多个“最佳实践”被过度绝对化的例子,如全局变量、GOTO 语句、DRY 原则、12 factor app、SOLID 等。
- 反对“最佳实践”时会遭遇类似的指责和压力,让人容易自我怀疑,就像在安全领域反对安全规定一样困难。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。