ユニオンとインターセクションの実践パターン
実際の開発にユニオンとインターセクションを適用します。
「ユニオンとインターセクションの実践パターン」はCoddyKit上の無料TypeScript Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはTypeScript Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 TypeScript Academyコースには全4レッスンが含まれています。
はじめに
省略可能なペイロードパターン
type Event =
| { type: 'click'; x: number; y: number }
| { type: 'keypress'; key: string }
| { type: 'blur' };交差型による Builder/Mixin
type Serializable = { serialize(): string };
type Validatable = { validate(): boolean };
type Model = Serializable & Validatable & { id: number };入力の正規化に使うユニオン
function toArray<T>(val: T | T[]): T[] {
return Array.isArray(val) ? val : [val];
}交差型によるブランド型
type UserId = number & { __brand: 'UserId' };
type PostId = number & { __brand: 'PostId' };
// Prevents accidentally mixing IDsWithOptional パターン
type RequiredFields = { id: number; email: string };
type OptionalFields = Partial<{ name: string; bio: string }>;
type UserUpdate = RequiredFields & OptionalFields;多相的なコンポーネント Props
type ButtonProps =
| { variant: 'primary'; onClick: () => void }
| { variant: 'link'; href: string };サードパーティ型の拡張
import type { Request } from 'express';
type AuthRequest = Request & { user: User };ユニオンと交差型の組み合わせ
type Admin = { role: 'admin' };
type User = { role: 'user' };
type LoggedIn = { sessionId: string };
type AuthUser = (Admin | User) & LoggedIn;ユニオンメンバーの型ガード
function isAdmin(u: AuthUser): u is Admin & LoggedIn {
return u.role === 'admin';
}交差型における分配動作
type Base = { id: number };
type AB = Base & (string | number);
// equivalent to: (Base & string) | (Base & number)確認問題
まとめ
よくある質問
「ユニオンとインターセクションの実践パターン」レッスンは無料ですか?
はい。「ユニオンとインターセクションの実践パターン」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、TypeScript Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 TypeScript Academyコースには全4レッスンが含まれています。
「ユニオンとインターセクションの実践パターン」で何を学びますか?
実際の開発にユニオンとインターセクションを適用します。 ブラウザで直接実行するハンズオンコードでTypeScript Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
TypeScript Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのTypeScript Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「ユニオンとインターセクションの実践パターン」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このTypeScript Academyレッスンでコードを書いて実行できますか?
はい。すべてのTypeScript Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- ユニオン型:AまたはB
- インターセクション型:AかつB
- 安全なパターンマッチングのための判別可能なユニオン
- ユニオンとインターセクションの実践パターン