被视为最佳的有害行为 | 扎卡里的家

主要观点:

  • 介绍了 Martin Tournoij 的《Against Best Practices》,并表达了自己的看法。
  • 探讨了“最佳实践”(Best Practices)和“被认为有害”(Considered Harmful)的相关内容。
  • goto语句为例,分析其在不同情境下的使用及利弊。
  • 强调语言习惯(idiomaticity)的重要性,即语言习惯是上下文相关的,理解语言习惯能带来更强大和更深刻的理解。

关键信息:

  • “最佳实践”起初像自行车的辅助轮,帮助避免新手错误,但不应视为绝对真理,过度依赖会阻碍学习。
  • “被认为有害”的宣言往往缺乏对特定语言特征有害性的充分论证,容易让人盲目避免使用某些特征。
  • goto语句为例,其可能导致 spaghetti 代码,不易理解代码意图,但在错误处理等特定情境下有其用处。
  • 语言习惯是上下文相关的,不同情境下语言习惯不同,如 Rust 中应用和库的错误处理习惯不同。

重要细节:

  • 以具体代码示例说明goto语句可能导致的问题,如在初始化变量时跳过或在错误处理中可能导致的混乱。
  • 提到 Dijkstra 对goto语句的观点及相关背景,如在汇编语言中goto结构可能是可接受甚至必要的。
  • 阐述了理解语言习惯的重要性,以及避免盲目遵循实践或宣言,而应注重理解语言习惯背后的原因。
阅读 19
0 条评论