객체의 필드 몇개만 전달할 경우, 통째로 넘기기 vs 여러개로 넘기기
510
投稿した質問数 8
class Member {
String id;
String name;
String addr;
int age;
}
위와 같은 클래스가 있고, 그중 절반정도의 필드를 매개변수로 넘겨야 할 경우,
아래 2가지중 하나를 선택하는 고민을 매번 하게 됩니다.
1) void check(id, name); 으로 할것인가
2) void check(Member member); 로 할것인가
클래스의 모든 필드를 참조한다면 , 당연히 객체를 통째로 넘기면 되나, 절반 정도만 사용한다면 고민이 됩니다. 범용적일 필요가 없는 메서드라고 하더라도, 불필요한 값들을 객체를 통째로 넘기므로, 이 객체필드중 어떤걸 사용하지? 하면서 '구현'을 찾아봐야 하는 단점이 있어 보입니다.
사용하는것만 무조건 넘겨야 한다면, 매개변수 갯수가 늘어나거나, 전용 dto를 만들어야 하니 불편하고,
통째로 넘기는걸 반복하다 보면 의미없는 필드가 더 많은 객체를 매개변수로 넘기는 것과 다름없는 문제가 있어보입니다.
절충점을 어떻게 찾아야 할까요?
回答 0
리팩토링 10. 함수를 명령으로 바꾸기 강의 부분에서 질문있습니다.
0
94
1
함수 추출하기 부분에서 의도와 구현에 대해 질문 있습니다.
0
202
1
레코드에 대해 질문 있습니다.
0
219
2
.github 토큰 등록하는 방법에 대한 질문
0
220
2
깃허브
0
202
1
홈 디렉토리 .github 파일 생성
0
456
1
리팩토링 22. 여러 함수를 변환 함수로 묶기 강의 내용과 소스 코드가 다른 부분 문의
0
554
1
필드를 감추는 것이 중요한 이유?
0
568
1
오타제보. CVS -> CSV
0
375
0
[오탈자제보] 아주 작은 오타
2
401
0
basePrice
0
294
1
4:04 단축키 궁금합니다.
0
435
1
rename 메뉴에 대한 사소한 질문
0
356
1
테스트 코드 예제
0
308
1
Exception 부분
0
338
1
리팩토링 강의 [ 일부 소스 파일 누락 ]
0
331
1
stream으로 변경 시 성능 문제
0
437
2
로컬 변수에 final
0
458
1
Area 밑줄 나온부분
0
404
1
클래스의 상속 vs 네임스페이스 vs nested 클래스
0
322
1
이런 경우도 따로 함수로 빼는게 좋을지 궁금합니다.
0
279
1
질문입니다
2
265
1
파라미터와 이들을 가진 클래스
0
237
1
해당 강의를 실행시 아래와 같은 에러가 발생합니다..!
0
598
2

