중급 TypeScript - 유틸리티 타입: Pick

유틸리티 타입: Pick

Pick은 TypeScript에서 제공하는 유틸리티 타입으로, 특정 객체 타입의 일부 속성만을 선택하여 새로운 타입을 생성하는 데 사용됩니다. 이를 통해 코드의 재사용성과 가독성을 높일 수 있습니다.

기본 개념

  • 목적: Pick은 주어진 객체 타입에서 원하는 속성만 골라서 새로운 타입을 만듭니다.
  • 형식: Pick<T, K>
    • 여기서 T는 원본 객체 타입이고, K는 선택하고자 하는 속성들의 키를 나타내는 문자열 리터럴 유니온입니다.

실용적인 예시

예를 들어, 사용자 정보를 담고 있는 인터페이스가 있다고 가정해봅시다:

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

이제 이 인터페이스에서 id, name, 그리고 email 속성만 포함된 새 타입을 만들고 싶다면 다음과 같이 사용할 수 있습니다:

type UserContactInfo = Pick<User, 'id' | 'name' | 'email'>;

const user1: UserContactInfo = {
    id: 1,
    name: "홍길동",
    email: "hong@example.com"
};

위 코드에서는 UserContactInfo라는 새로운 타입이 만들어졌고, 이는 오직 필요한 정보인 ID와 이름 및 이메일 주소만 포함합니다. 이렇게 하면 불필요한 정보를 제외하고 필요한 데이터에 집중할 수 있게 됩니다.

장점

  • 코드 간결화:

    • 필요 없는 속성을 제거함으로써 더 간단하고 명확한 코드를 작성할 수 있습니다.
  • 유지보수 용이:

    • 나중에 인터페이스가 수정되더라도, 필요한 속성들만 가져오기 때문에 유지보수가 쉬워집니다.

결론

TypeScript의 유틸리티 타입인 Pick은 복잡한 객체 구조 내에서 특정 필드들만 선택하여 새로운 형태로 변환할 때 매우 유용합니다. 이를 통해 개발자는 더 깔끔하고 관리하기 쉬운 코드를 작성할 수 있으며, 각 상황에 맞게 적절하게 활용하면 좋습니다.

Subscribe to shimdh.log

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
jamie@example.com
Subscribe