为什么程序员都讨厌 reduce?

Anecdotally, programmers dislike "reduce"

在我的日常开发中,map 和 filter 几乎从未在代码审查中引发争议,但 reduce 却是个例外。每次提交包含 reduce 的代码,我总会收到“难以阅读”的反馈。尽管我在 Clojure 开发时并未遇到这种情况,但在 JavaScript、Python 和 Swift 等语言中,reduce 似乎总显得格格不入。我推测这可能源于其可读性较差、开发者熟悉度不足,或是性能与优雅度上的劣势。虽然我个人偏爱 reduce,但为了团队协作的顺畅,我通常会将其替换为其他写法。这似乎是一个有趣的社交现象,不知你是否也有同感?

简而言之:根据我的经验,人们喜欢 map 和 filter,但不喜欢 reduce。

同日更多故事

2026-09-16