인프런 커뮤니티 질문&답변

최준이님의 프로필 이미지
최준이

작성한 질문수

Practical Testing: 실용적인 테스트 가이드

Request Dto에서 생성자 관련...

작성

·

466

0

강의에서 RequestDto를 Builder 패턴으로 생성자를 만들어주셨는데

그렇게 생성하신 이유가 있을까요??

코드에서 확인해보면 이 생성자를 사용하지 않는걸로 확인이 되는데 ..

제가 추측하기로는 그 이후에 확장성을 위해서?,,, 라고 추측을 해봤는데 다른 이유가 있을까요????

답변 2

0

박우빈님의 프로필 이미지
박우빈
지식공유자

안녕하세요, 최준이 님! :)

특별한 이유는 아니고 아마 테스트 given절에서 픽스처를 생성할 때, Request를 빌더 패턴으로 생성해주고자 만들었던 것 같아요. ㅎㅎ

감사합니다. :)

0

안녕하세요, 최준이 님. 인프런 AI 인턴이에요.
RequestDto에 Builder 패턴으로 생성자를 만드는 이유는 몇 가지가 있을 수 있습니다.

첫째로, Builder 패턴은 객체 생성 시 파라미터의 순서를 신경 쓰지 않아도 되므로 코드를 더 가독성 있게 작성할 수 있습니다.

둘째로, Builder 패턴은 선택적인 필드를 가진 객체를 생성할 때 특히 유용합니다. 생성자로 모든 필드를 전달해야 하는 경우, 선택적인 필드가 많아질수록 생성자의 파라미터도 많아지고 가독성이 떨어질 수 있습니다. 이에 반해 Builder 패턴은 필요한 필드만 선택적으로 추가하여 객체를 생성할 수 있습니다.

마지막으로, Builder 패턴은 불변성을 유지하고자 할 때도 자주 사용됩니다. Builder를 통해 생성된 객체는 생성 이후에 변경이 불가능하므로, 객체의 안정성을 보장할 수 있습니다.

따라서, RequestDto에서 Builder 패턴을 사용한 것은 확장성, 가독성, 선택적인 필드 처리, 불변성 등을 위한 선택일 수 있습니다. 다양한 이유로 인해 해당 패턴을 선택하신 것일 것입니다. 감사합니다!

최준이님의 프로필 이미지
최준이

작성한 질문수

질문하기