Chapter 02 : 객체 생성과 파괴
- Item 01 : 생성자 대신 정적 팩토리 메서드를 고려하라
- Item 02 : 생성자에 매개변수가 많다면 빌더를 고려하라
- Item 03 : private 생성자나 열거 타입으로 싱글톤임을 보증하라
- Item 04 : 인스턴스화를 막으려거든 private 생성자를 사용하라
- Item 05 : 자원을 직접 명시하지 말고 의존 객체 주입을 사용하라
- Item 06 : 불필요한 객체 생성을 피하라
- Item 07 : 다 쓴 객체 참조를 해제하라
- Item 08 : finalizer와 cleaner 사용을 피하라
- Item 09 : try-finally보다는 try-with-resources를 사용하라
Chapter 04 : 클래스와 인터페이스
- Item 15 : 클래스와 멤버의 접근 권한을 최소화 하라
- Item 16 : public 클래스에서는 public 필드가 아닌 접근자 메서드 사용하라
- Item 17 : 변경 가능성을 최소화 하라
- Item 18 : 상속보다는 컴포지션을 사용하라
- Item 19 : 상속을 고려해 설계하고 문서화 하라. 그러지 않았다면 상속을 금지하라.
- Item 20 : 추상 클래스보다는 인터페이스를 우선하라
- Item 21 : 인터페이스는 구현하는 쪽을 생각해 설계하라
- Item 22 : 인터페이스는 타입을 정의하는 용도로만 사용하라
- Item 23 : 태그 달린 클래스보다는 클래스 계층구조를 활용하라
- Item 24 : 멤버 클래스는 되도록 static으로 만들라
- Item 25 : 톱레벨 클래스는 한 파일에 하나만 담으라
Item 1 Item 2 Item 3 유현우 최준 강철원
📚 Item 1 생성자 대신 정적 팩터리 메서드를 고려하라 🎥 Item 1 발표 영상 |
📚 Item 2 생성자에 매개변수가 많다면 빌더를 고려하라 🎥 Item 2 발표 영상 |
📚 Item 3 생성자나 열거 타입으로 싱글턴임을 보증하라 🎥 Item 3 발표 영상 |
Item 4 Item 5 Item 6 Item 6 강철원 유현우 최준 김형주
Item 7 Item 8 Item 8 Item 9 강철원 김형주 유현우 최준
Item 10 Item 11 Item 11 Item 12 강철원 김형주 최준 유현우
Item 13 Item 14 Item 15 Item 15 유현우 김형주 강철원 최준
Item 16 Item 17 Item 17 Item 18 김형주 강철원 최준 유현우
Item 19 Item 20 Item 20 Item 21 김형주 강철원 유현우 최준
Item 22 Item 23 Item 24 Item 24 강철원 최준 김형주 유현우
Item 25 Item 26 Item 26 Item 27 유현우 김형주 최준 강철원
📚 Item 25 톱레벨 클래스는 한 파일에 하나만 담으라 🎥 Item 25 발표 영상 |
📚 Item 26 로 타입은 사용하지 말라 (1) 🎥 Item 26 발표 영상 (1) <김형주> |
📚 Item 26 로 타입은 사용하지 말라 (2) 🎥 Item 26 발표 영상 (2) <최준> |
📚 Item 27 비검사 경고를 제거하라 🎥 Item 27 발표 영상 |
Item 28 Item 29 유현우 김형주
📚 Item 28 배열보다는 리스트를 사용하라 🎥 Item 28 발표 영상 |
📚 Item 29 이왕이면 제네릭 타입으로 만들라 🎥 Item 29 발표 영상 |
Item 30 Item 31 강철원 최준
📚 Item 30 이왕이면 제네릭 메서드로 만들라 🎥 Item 30 발표 영상 |
📚 Item 31 한정적 와일드카드를 사용해 API 유연성을 높이라 🎥 Item 31 발표 영상 |
Item 32 Item 33 유현우 김형주
📚 Item 32 제네릭과 가변인수를 함께 쓸 때는 신중하라 🎥 Item 32 발표 영상 |
📚 Item 33 타입 안전 이종 컨테이너를 고려하라 🎥 Item 33 발표 영상 |
Item 36 Item 37 유현우 김형주
📚 Item 36 비트 필드 대신 EnumSet을 사용하라 🎥 Item 36 발표 영상 |
📚 Item 37 ordinal 인덱싱 대신 EnumMap을 사용하라 🎥 Item 37 발표 영상 |
Item 38 Item 39 강철원 최준
📚 Item 38 확장할 수 있는 열거 타입이 필요하면 인터페이스를 사용하라 🎥 Item 38 발표 영상 |
📚 Item 39 명명 패턴보다 애너테이션을 사용하라 🎥 Item 39 발표 영상 |
Item 40 Item 41 유현우 김형주
📚 Item 40 애너테이션을 일관되게 사용하라 🎥 Item 40 발표 영상 |
📚 Item 41 정의하려는 것이 타입이라면 마커 인터페이스를 사용하라 🎥 Item 41 발표 영상 |
Item 42 Item 43 강철원 최준
📚 Item 42 익명 클래스보다는 람다를 사용하라 🎥 Item 42 발표 영상 |
📚 Item 43 람다보다는 메서드 참조를 사용하라 🎥 Item 43 발표 영상 |