小编典典

你讨厌你最喜欢的语言的五件事是什么?

all

不要将它与另一种语言进行比较,也不要谈论你已经讨厌的语言。不要用你最喜欢的语言谈论你喜欢的事情。我只想听听你讨厌但容忍的事情,这样你就可以使用所有其他的东西,我想听听你希望其他人使用的语言。

每当有人试图将他们最喜欢的语言强加给我时,我都会问这个问题,有时作为面试问题。如果有人找不到他最喜欢的工具的五个讨厌的地方,那么他对它的了解还不够充分,无法提倡它或使用它赚大钱。他还没有在足够多的不同情况下使用它来充分探索它。他提倡将其作为一种文化或宗教,这意味着如果我不选择他最喜欢的技术,那我就错了。

我不在乎你使用哪种语言。不想使用特定语言?然后不要。您通过尽职调查做出明智的选择,但仍然不使用它?美好的。有时正确的答案是“你有一个强大的编程团队,拥有良好的实践和丰富的
Bar 经验。换成 Foo 会很愚蠢。”


这对于代码审查来说也是一个很好的问题。真正了解代码库的人会对它提出各种建议,而不太了解它的人则会有非具体的抱怨。我会问诸如“如果你可以重新开始这个项目,你会做些什么不同的事情?”
在这片梦幻之地,用户和程序员可以抱怨任何他们不喜欢的事情。“我想要一个更好的界面”,“我想将模型与视图分开”,“我会使用这个模块而不是另一个”,“我会重命名这组方法”,或者他们真正不这样做的任何东西不喜欢现在的情况。这就是我了解特定开发人员对代码库了解多少的方式。这也是一个关于程序员有多少的线索’

仇恨不是弄清楚人们知道多少的唯一维度,但我发现它是一个非常好的维度。他们讨厌的事情也让我知道他们对这个主题的思考程度。


阅读 112

收藏
2022-03-22

共1个答案

小编典典

我讨厌 Java 的五件事:

  • 没有一流的功能。
  • 没有类型推断。
  • 例如图形中缺乏健全的默认值。
  • NullPointerException 不包含关于什么是 null 的更多信息。
  • 毫无意义的“可配置”框架/服务提供者接口/工厂类/依赖注入系统的激增。几乎从未使用过可配置性,严重违反了 DRY,代码大小翻了四倍,易读性减半。

我知道,我应该看看 Scala。

2022-03-22