CH10-5 · DECISION

PECS로 컬렉션 API 설계하기의 선택 기준을 나란히 비교한다

비교 항목: 생산자는 extends로 읽기 범위를 넓힌다 / 불필요한 유연성은 API를 어렵게 한다 / 반환 타입에는 불필요한 와일드카드를 피한다

PECS로 컬렉션 API 설계하기 판단표
확인 질문판단 근거코드에서 드러낼 것
생산자는 extends로 읽기 범위를 넓힌다소스가 T 값을 제공한다면 List로 T 또는 하위 타입 목록을 받을 수 있습니다.타입과 시작값
불필요한 유연성은 API를 어렵게 한다정확히 List만 다루는 내부 메서드까지 와일드카드를 쓰지 않습니다.실패 또는 변경 경계
반환 타입에는 불필요한 와일드카드를 피한다호출자가 결과를 사용할 때 캡처 타입을 처리하게 만들 수 있습니다.선택한 규칙의 결과

선택 기준 호출자가 결과를 사용할 때 캡처 타입을 처리하게 만들 수 있습니다.