「この章では、TypeScriptのジェネリクスについて説明します。これは、任意の型との互換性を維持しながら型安全を保持する「マジックボックス」ようなものです。ジェネリクスを使用することで、1つの関数や型を書くだけで、任意の型との互換性を実現することができます。例えば、identity関数は、渡された型と同じ型を返す関数です。もう1つの例として、任意の配列型の最初の要素を返す関数があり、自動的に正しい型を返します。また、Box型のように、任意の型を保持するジェネリック型を作成することもできます。ジェネリクスは、特定のプロパティを持つ型のみを受け入れる制約付きで使用することもできます。Reactでは、ジェネリクスを使用して、任意のデータ構造に対応する再利用可能で型安全なUIコンポーネントを作成することができます。例えば、数字、文字列、ユーザーなどのリストをレンダリングするListコンポーネントを作成することができます。このアプローチにより、再利用性、型安全性、およびクリーンなUIコンポーネントを実現することができます。TypeScriptの保護を維持しながら、パワフルでフレキシブルなコンポーネントを構築することができます。」
dev.to
TypeScript’s Most Important Concept, Made Stupidly Simple(Generics!)(11)
