Effective Java - item 41

정의하려는 것이 타입이라면 마커 인터페이스를 사용하라

Effective Java - item 37

ordinal 인덱싱 대신 EnumMap을 사용하라

Effective Java - item 34

int 상수 대신 열거 타입을 사용해라

Effective Java - item 31

한정적 와일드카드로 API 유연성을 높여라

Effective Java - item 29

이왕이면 제네릭 타입으로 만들라

Effective Java - item 25

톱 레벨 클래스는 한 파일에 하나만 담으라

Effective Java - item 23

태그 달린 클래스보다는 클래스 계층구조를 활용하라

Effective Java - item 20

추상 클래스보다는 인터페이스를 우선하라