結論

これが、インターフェース上の型パラメータが可能にするパターンとトレードオフの一部を説明できることを願っています。これは強力なツールですが、コストも伴います。主な要点は以下の通りです:

  1. ジェネリックインターフェースを自己参照的に使用して、レシーバーの制約を表現する。
  2. 異なる型パラメータ間の制約された関係を作成するためにそれらを使用する。
  3. 異なる種類の制約を持つ異なる実装を抽象化するためにそれらを使用する。
  4. ポインターレシーバーに制約する必要がある状況に陥った場合は、追加の複雑さを避けるためにコードをリファクタリングできるかどうかを検討してください。「ポインターレシーバーに制約すべきか?」を参照してください。

いつものように、過度に設計しないでください:柔軟性は劣るが、よりシンプルで読みやすいソリューションが、最終的にはより賢明な選択かもしれません。