程序员为什么不喜欢 reduce
来源: evanhahn.com — 2026-09-13
概述
Evan Hahn 记录了一个现象级的观察:代码评审里 map 和 filter 几乎不会招来意见,但一旦提交包含 reduce 的补丁,常有人评论「这一段不好读」,而在真实代码里 reduce 的出现频率也远低于 map、filter、some。他列出几种可能解释:reduce 更难读、更不常见、性能可能更差,在 JavaScript、Python、Swift 这类语言里表达力也偏笨重——唯有他在 Clojure 工作期间从未收到这类反馈。作者坦言自己通常直接改掉写法就继续推进,并非坚持什么立场,只是把这个社会性小现象记录下来,并顺带怀疑近年评审变松是观察变少的原因。
核心要点
- 同样的评审者对 map、filter 几乎不提意见,唯独对 reduce 的评语常常是「这段不好读」。
- 作者的清单里有四条猜测:更难读、更不熟悉、性能可能更差、在 JS/Python/Swift 里不够优雅,他调侃唯一没有这种反馈的是写 Clojure 的日子。
- 这不是技术争论而是一种团队口味,作者的处理方式很简单:把 reduce 换成别的写法然后继续往前走。
金句
轶事层面,我逐渐相信程序员没那么喜欢 reduce。
👍 0
👎 0
返回 Lobsters 首页