Tips

開発Tips(2025-10-30)

TypeScriptの型定義をより柔軟にし、コードの再利用性を高めるためのTipsです。`Pick`と`Omit`ユーティリティ型を活用することで、既存の型から必要なプロパティだけを選択したり、特定のプロパティを除外したりできます。

TypeScript

TypeScriptの型定義をより柔軟にし、コードの再利用性を高めるためのTipsです。PickOmitユーティリティ型を活用することで、既存の型から必要なプロパティだけを選択したり、特定のプロパティを除外したりできます。

TypeScript: PickとOmitユーティリティ型を活用した型定義

PickOmitユーティリティ型を使うことで、既存の型定義をベースに、必要な部分だけを抽出したり、不要な部分を除外したりできます。これにより、型定義の重複を避け、コードの可読性と保守性を向上させることができます。

コード例:

interface User {
  id: number;
  name: string;
  email: string;
  age: number;
}

// User型からidとnameだけを抽出した型
type UserProfile = Pick<User, 'id' | 'name'>;

// User型からageを除外した型
type UserWithoutAge = Omit<User, 'age'>;

const profile: UserProfile = {
  id: 123,
  name: "Taro"
};

const userWithoutAge: UserWithoutAge = {
  id: 123,
  name: "Taro",
  email: "taro@example.com",
  // ageは含められない
};

注意点:

  • PickOmitは、新しい型を定義するだけで、元の型を変更するものではありません。
  • 型定義を間違えると、コンパイルエラーが発生するので、注意が必要です。

おすすめポイント:

  • DRY原則 (Don’t Repeat Yourself) に基づいた型定義が可能になります。
  • 既存の型定義を再利用することで、コードの重複を減らし、可読性を向上させることができます。
  • より複雑な型操作を行うための第一歩として、これらのユーティリティ型を理解しておくことは非常に有益です。