인프런 커뮤니티 질문&답변
파라미터와 이들을 가진 클래스
작성
·
233
0
안녕하세요 기선님! 강의 항상 잘 듣고 있습니다. 오늘 궁금한 점은 파라미터 수를 줄이기 위해 해당 파라미터를 갖고 있는 다른 클래스를 의존해도 되는가 입니다
제가 작성한 코드 중 A 메소드에서 여러개의 파라미터를 받는데, 그 파라미터들이 한 엔티티 클래스의 필드들입니다. 그리고 이 A 메소드에서 사용되는 파라미터들이 또 다른 메소드들에서도 공통적으로 사용되고 있는 상황입니다.
그래서 저는 이 공통적으로 사용되는 파라미터를 가진 DTO 클래스를 만든 후 이 클래스에 해당 엔티티를 받는 팩토리 메소드를 만들어서 A를 비롯한 여러 메소드의 파라미터를 DTO 하나로 줄이는 리팩토링을 진행했습니다.
하지만 해당 엔티티 클래스는 필드가 10개가 넘고, 고작 이 엔티티의 필드 몇개를 사용하기 위해 의존하는 것은 다소 무거운 게 아닌가라는 고민이 생기는데, 기선님의 시각은 어떠한지 궁금합니다!
퀴즈
코드에서 '긴 함수'라고 판단하는 주된 기준은 무엇일까요?
함수의 코드 라인 수가 특정 개수(예: 10줄)를 초과하는 경우
함수 이름만으로 무슨 일을 하는지 알기 어렵고, 내부 구현을 자세히 봐야 이해되는 경우
성능 최적화를 위해 여러 기능을 하나의 함수에 모아둔 경우
함수가 너무 짧아 빈번한 컨텍스트 스위칭을 유발하는 경우






해당 엔티티가 JPA 엔티티이고 이 엔티티를 수정할 일이 없어서 엔티티를 직접 참조하는 것 보다 필요한 값만 래핑한 dto를 넘겨주는게 좋겠다라는 판단을 하게 되었습니다!