プログラミング
Anecdotally, programmers dislike "reduce"
Anecdotally, programmers dislike "reduce" (evanhahn.com)
要約
プログラマーの間では、mapやfilterといった関数は広く受け入れられている一方で、reduce関数は好まれない傾向にあるという筆者の経験談です。コードレビューでreduceの使用が指摘されることが多く、JavaScript、Python、Swiftといった言語では、reduceが読みにくく、エレガントさに欠けると感じられるようです。筆者はこの現象を社会的な現象として記録していますが、その理由についてはいくつかの仮説を立てています。
全文翻訳
要するに、私の経験では、人々はmapとfilterを好みますが、reduceは好みません。
私はmapとfilterのような関数を常に使用しています。そのコードをレビューに出すと、同僚が文句を言うことはめったにありません。他の決定については多くのフィードバックを得ますが、mapとfilterの使用については何もありません。
reduceについては同じことは言えません。しばしば、reduceが含まれるパッチを提出すると、「この部分は読みにくい」といったコメントを受け取ります。そして、私はsomeやfilterなどよりもreduceをはるかに少なく見かけます。
経験則として、プログラマーはreduceほど好きではないと信じるようになりました。
理由はわかりませんが、いくつかの仮説があります。
reduceは読みにくい。
reduceはあまり馴染みがない。
reduceは他のオプションと比較してパフォーマンスが悪い可能性がある。
私が使用するJavaScript、Python、Swiftのような言語では、reduceはエレガントさに欠けます。Clojure開発者としての私の幸せな期間中、このフィードバックは得られませんでした。
私は間違っていて、現実ではないトレンドを見ている。
私は通常、reduceを別のものに変更して先に進みます。それを好むにもかかわらず、あまり気にしません。しかし、これは私が観察した少しの社会的現象であり、それを記録しておきたいと思いました。
最近では、コードレビューがそれほど徹底されなくなったため、この現象が少なくなっていることにも気づきました。
あなたはこのことに気づいていますか?reduceは好きですか?教えてください。