map/reduce/filterなどの慣用的な置き換え 質問する

map/reduce/filterなどの慣用的な置き換え 質問する

Go プログラムに項目のリストがあります。それらをループし、項目のサブセットに対して何らかの操作を実行したいと考えています。これを行うための、次よりもエレガントで慣用的なコードはありますか?

for key, value := range listOfThings {
    if(!value.Enabled) {
        continue;
    }

    doTheThing(key, value)
}

大きな文脈 -- 私はmap/reduce/filterなどがこの種のことの一般的なパターンである言語から来ていますが、インターネット上の言葉そういった高レベルの抽象化は、実際には Go らしいことではないということです。

continueこの種のコードでは、範囲ブロック内のguard/ 句よりもエレガントなものはありますか?

ベストアンサー1

もしまだ興味があるなら、このgo-funkパッケージを使用すると map/reduce/filter などを実行できるようになります。

このライブラリは、回答時点では定期的に更新されています。 前述のライブラリは 4 年間更新されていません。

Github - ゴーファンク

おすすめ記事