www.aladin.co.kr/shop/wproduct.aspx?ItemId=246571219
요약 포스트입니다.
아이템 | 설명 |
Item 7.1 불 매개변수로 메서드 분할 | 한 메서드의 두가지 역할을 하는지 의심한다 |
Item 7.2 옵션 매개변수로 메서드 분할 | |
Item 7.3 구체 타입보다 추상타입 | 추상타입에 의존하도록 한다 |
Item 7.4 가변 상태보다 불변 상태 사용하기 | |
Item 7.5 상태와 동작 결합하기 | 상태와 동작을 분리하면 개발의 복잡성이 올라간다 캡슐화를 헤칠수 있다. |
Item 7.6 참조 누수 피하기 | 리스트의 경우 외부로 내부 참조를 노출 할 수 있다. new ArrayList<>(리스트)로 방어 복사를 하거나 Collections.unmodifiableList를 사용한다. |
Item 7.7 널 반환하지 않기 | |
Item 8.1 익명 클래스 대신 람다 사용하기 | |
Item 8.2 명령형 방식 대신 함수형 | 가능하다면 람다로 의도를 표현 |
Item 8.3 람다 대신 메서드 참조 | |
Item 8.4 부수 효과 피하기 | |
Item 8.5 복잡한 스트림 종료 시 컬렉트 사용하기 | |
Item 8.6 스트림 내 예외 피하기 | try with resource를 권장 |
Item 8.7 널 대신 옵셔널 | |
Item 8.8 선택 필드나 매개변수 피하기 | |
Item 8.9 옵셔널을 스트림으로 사용하기 | 스트림을 사용하여 옵셔널의 기능을 대신할 수 있는지 고민해본다 |