»
S
I
D
E
B
A
R
«
파라미테 객체
March 11th, 2014 by Wegra Lee

(원문) Introduce Parameter Object

Effective Unit Testing의7.3.9절에서 인용한 블로그 글이다.

파라미터 객체란?

항시 같이 몰려다니는 파라미터들이 있다. 그렇다면 이들을 묶는 객체를 만들어 대체하라.

Parameter Object

“파라미터 객체 추출”이라 알려진 리펙토링 기법이다.

메서드 호출이 연쇄적으로 일어난다면?

랄프 존슨(Ralph Johnson)은 리팩토링 책이 제시한 일반적 상황이 잘 이해되지 않는다 하였다. 거기서 말하는 일반적인 상황이란 이렇다. 서로를 호출하는 메서드가 한 뭉터기가 있다. 그리고 이 메서드들은 각각 수많은 파라미터를 가지고 있어서  파라미터 객체 추출 기법으로 리팩토링하고 싶은 상황이다. 하지만 각각에 파라미터 객체 추출을 적용하면 새로운 객체가 너무 많이 생길테니 고민이 된다. 우리는 객체 하나만을 주고받고 싶다.

그렇다면 연쇄적 호출이 시작되는 메서드에만 파라미터 객체를 적용하라. 그다음에 다른 메서드에는 다음의 ‘전체 객체 보존’ 기법을 적용하면 된다.

전체 객체 보존

한 객체에서 복수의 값을 얻은 후, 이를 다른 메서드를 호출할 때 입력 인자로 넘긴다.

그렇다면 차라리 객체를 통체로 넘겨라.

Preserve Whold Object


»  Substance: WordPress   »  Style: Ahren Ahimsa