인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

Inflearn Community Q&A

o3o10255162's profile image
o3o10255162

asked

Spring Core Principles - Basics

Choose constructor injection!

생성자 주입 문의

Written on

·

354

0

[질문 내용]
안녕하세요. 생성자 주입을 권장한다는 말씀을 듣고 의문이 생겨 문의드립니다.

만약 개발 도중 생성자 필드가 추가가 된다면 해당 생성자 부분 코드를 건드리게 될텐데, 그에 따라 해당 생성자를 사용했던 코드들이 전부 오류가 날 것이고 변경이 필요할 것 같습니다.

해당 사항이 발생하더라도 생성자 주입 방식을 제일 권장하시는 걸까요?

spring객체지향

Answer 1

0

안녕하세요. asdf님, 공식 서포터즈 OMG입니다.

말씀하신대로 필드가 추가된다면 생성자까지 수정을 해야하는 번거로움이 있습니다.(@Autowired에 비해)

하지만 Lombok을 사용한다면 필드주입과 비슷한 편의성을 가지며 생성자 주입의 장점을 얻을 수 있습니다.

롬복은 필수가 아니지만, 강의에서 설명하는 생성자 주입의 이점으로 인해 불편함을 감수하더라도 좋은 애플리케이션 설계를 고려한다면 생성자 주입을 사용하는 것이 바람직하다 생각합니다 :)

감사합니다.

o3o10255162님의 프로필 이미지
o3o10255162
Questioner

답변감사합니다.

롬복을 사용한다해도 테스트시 필요로인해 new로 선언한것들은 생성자 파라미터들이 추가될때마다 수정이 불가피한게 맞을까요?

앗. 네 테스트에서 new로 생성하여 진행한 부분은 추가/수정이 발생할 수 있을 것 같습니다 :)

 

o3o10255162's profile image
o3o10255162

asked

Ask a question