reduceを避ける判断を可読性から考える
これは何?配列を一つの値へ畳み込むreduceについて、実務codeで敬遠される理由をAPIの理解costから考察した記事です。
reduceはmapやfilterより自由度が高いぶん、accumulatorの型と更新規則を読み手が毎回復元する必要があります。単純なloopや専用methodの方が目的を直接表せる場面では、短さより認知負荷を優先すべきだと論じます。
抽象度の高いAPIはcode量を減らしてもreview時間を減らすとは限りません。teamで使う表現は、局所的な短さではなく変更時の誤読costで選ぶ必要があります。
- 読むべき人
- application developer、code reviewer
- HN
- 155 points / 234 comments