← 질문 목록
#128깊이 0

생성자 주입이 기본 선택인 이유는?

프레임워크기초설계 원칙

필수 의존성을 객체 생성 시점에 보장하고 불변으로 만들 수 있기 때문이다. 테스트에서 직접 주입하기 쉽다. 순환 참조도 시작 단계에서 드러난다.

기준생성자 주입필드 주입
필수성생성자 서명이 강제한다빈을 만들 때 주입 오류로 잡힌다
불변성final 가능final 불가
테스트직접 전달컨테이너 필요

선택 의존성은 세터나 ObjectProvider로 표현할 수 있다. 필수 값과 선택 값을 주입 방식에서 구분하면 객체의 계약이 선명해진다.

생성자가 하나면 @Autowired를 생략할 수 있다. 매개변수가 지나치게 많다면 주입 문법보다 클래스가 너무 많은 책임을 가진 것은 아닌지 먼저 본다.

추천 꼬리질문

0/300

적은 내용은 AI 학습에 쓰일 수 있습니다. 이름이나 연락처는 넣지 말아 주세요.

관련 질문

생성자 주입이 기본 선택인 이유는?