제네릭 제약은 넓게 받고 필요한 조건만 증명한다
T를 완전히 고정하지 않고 extends로 최소 조건을 요구하면 재사용성과 안전성을 동시에 지킬 수 있다.
Input T
호출자가 타입 결정
extends
필요 속성만 요구
Narrowing
조건문으로 더 좁힘
Return
입력 타입 관계를 유지
| 점검 | 기준 |
|---|---|
| 좋은 제약 | T extends { id: string } |
| 과한 제약 | 필요 없는 속성까지 요구 |
| 핵심 | 제네릭은 열어두되 내부에서 필요한 만큼만 잠근다 |
핵심 제네릭은 열어두되 내부에서 필요한 만큼만 잠근다