• ジェネリクスはGo 1.19で導入された
  • ジェネリクスでは型が引数のような役目を担う

8.1.1 型パラメータの必要性

  • 状況によって、フィールドや関数の引数に「特定の型」が使われるまで未指定のままにしておきたい場合がある

    • 単純な方法は型ごとに別々の関数を記述することだが、コードに重複が多く冗長になり、エラーが発生しやすくなる

8.1.2 インタフェースを使った重複の回避とその問題点

  • インタフェースでanyを使用することで共通化できるが、Goの主な利点の一つであるコンパイル時の型安全性のチェックが省略されてしまう