복잡한 제네릭 타입을 두려워하지 말자

    제네릭 타입을 사용하는 언어(자바나 C# 같은)는 일반적으로 한두 개의 단순한 타입 파라미터만을 사용한다. 많은 제네릭 파라미터로 생성한 타입을 사용하는 함수형 프로그래밍의 관행은 종종 과도한 복잡성의 표시로 여겨진다.

    그러나 7장의 제네릭스는 타입 빌더다에서 볼 수 있듯이, 우리는 제네릭스를 타입 빌더로 생각해야 한다. List<T>는 그 자체로 타입이 아니라, 우리가 필요한 모든 구체적 타입을 생성할 수 있게 해주는 빌더이다. 이런 관점에서 볼 때, 제네릭 타입 정의에 네다섯 개의 서로 다른 제네릭 타입 변수가 있는 것은 네다섯 개의 파라미터를 가진 생성자를 가지는 클래스를 일반적으로 허용하는 것처럼 큰 문제가 아니다.

    반면 스무 개 정도의 파라미터를 정의해야 한다면, 다른 방법을 고려해봐야 할 것이다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.