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

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

void님의 프로필 이미지
void

작성한 질문수

코딩으로 학습하는 리팩토링

리팩토링 9. 객체 통째로 넘기기

객체의 필드 몇개만 전달할 경우, 통째로 넘기기 vs 여러개로 넘기기

작성

·

433

·

수정됨

0

class Member {

String id;

String name;

String addr;

int age;

}

 

위와 같은 클래스가 있고, 그중 절반정도의 필드를 매개변수로 넘겨야 할 경우,

아래 2가지중 하나를 선택하는 고민을 매번 하게 됩니다.

1) void check(id, name); 으로 할것인가

2) void check(Member member); 로 할것인가

 

클래스의 모든 필드를 참조한다면 , 당연히 객체를 통째로 넘기면 되나, 절반 정도만 사용한다면 고민이 됩니다. 범용적일 필요가 없는 메서드라고 하더라도, 불필요한 값들을 객체를 통째로 넘기므로, 이 객체필드중 어떤걸 사용하지? 하면서 '구현'을 찾아봐야 하는 단점이 있어 보입니다.

사용하는것만 무조건 넘겨야 한다면, 매개변수 갯수가 늘어나거나, 전용 dto를 만들어야 하니 불편하고,

통째로 넘기는걸 반복하다 보면 의미없는 필드가 더 많은 객체를 매개변수로 넘기는 것과 다름없는 문제가 있어보입니다.

절충점을 어떻게 찾아야 할까요?

 

답변

답변을 기다리고 있는 질문이에요
첫번째 답변을 남겨보세요!
void님의 프로필 이미지
void

작성한 질문수

질문하기