2022 05 20
2022-05-20¶
Effective Java Item 1. 생성자 대신 정적 팩토리 메서드를 고려하라 완벽 공략 강의¶
- 참고: https://www.inflearn.com/course/%EC%9D%B4%ED%8E%99%ED%8B%B0%EB%B8%8C-%EC%9E%90%EB%B0%94-1/dashboard
- 완벽 공략 1. 열거 타입
- 들어갈 수 있는 값을 제한하여 Type Safety 보장
- 해당 Enum 인스턴스는 딱 하나만 생기는 싱글턴
- 따라서
==로 동등비교 할 수 있음
- 따라서
- EnumSet, EnumMap
- 완벽 공략 2. 플라이웨이트 패턴
- 자주 사용되는 같은 객체를 묶어서 메모리 사용 줄이자
- 자주 변하는 속성과 변하지 않는 속성을 분리하고, 재사용하여 메모리 사용 줄이는 것
- 학교는 자주 안바뀐다면, 이런식으로 관리해보는것은 어떨까?
- 완벽 공략 3. 인터페이스와 정적 메서드
- 인터페이스 특 : 디폴트 메서드와 정적 메서드 가질 수 있음
- 디폴트 메서드 (default method)
- 인터페이스에서 메서드 선언 뿐 아닌, 기본적인 구현체 까지 제공가능
- 기존 인터페이스를 구현하는 클래스에 새로운 기능 추가가능
- 이거 상속받아 인스턴스와 시킨 객체가 default method 호출하여 로직 수행가능
- 정적 메서드 (static method)
- 자바 9 부터는 private static도 OK
- 완벽 공략 4. 서비스 제공자 프레임워크
- 주요 구성 요소
- 서비스 제공자 인터페이스 : 제공할 기능을 담은 인터페이스
- 서비스 제공자(서비스 구현체) : 인터페이스를 구현한
@Service붙은 서비스 클래스 - 서비스 제공자 등록 API :
@Configuration,@Bean - 서비스 접근 API :
ApplicationContext,@Autowired
- 주요 구성 요소
- 완벽 공략 5. 리플렉션