概要
結構シンプルに大事なことを言っているなと思ったので、ここにメモメモ。。。
Go本家のブログにて
という記事がGo 1.18のリリースと共に出ていまして、その内容です。
中に、使うべきときや使わない方が良いときなどが書いてあるのですが、最後の部分にキレイに纏められています。
以下、上記ブログより引用。
If you find yourself writing the exact same code multiple times, where the only difference between the copies is that the code uses different types, consider whether you can use a type parameter. Another way to say this is that you should avoid type parameters until you notice that you are about the write the exact same code multiple times.
もし、全く同じコードを何度も書いていて、そのコピー間の違いは、コードが異なる型を使用していることだけである場合、型パラメータを使用できるかどうかを検討してください。 別の言い方をすれば、まったく同じコードを何度も書こうとしていることに気づくまでは、型パラメータを使わない方がいいということです。
まさにその通りですね。これは他の言語の場合でも同じですね。
便利だからといって、何でもかんでもジェネリクスにすればいいという訳じゃない。
過去の記事については、以下のページからご参照下さい。
サンプルコードは、以下の場所で公開しています。