제네릭 제약은 넓게 받고 필요한 조건만 증명한다

T를 완전히 고정하지 않고 extends로 최소 조건을 요구하면 재사용성과 안전성을 동시에 지킬 수 있다.

1
Input T
호출자가 타입 결정
2
extends
필요 속성만 요구
3
Narrowing
조건문으로 더 좁힘
4
Return
입력 타입 관계를 유지
점검기준
좋은 제약T extends { id: string }
과한 제약필요 없는 속성까지 요구
핵심제네릭은 열어두되 내부에서 필요한 만큼만 잠근다

핵심 제네릭은 열어두되 내부에서 필요한 만큼만 잠근다