정오표

==== 신판 1쇄(2쇄에 반영 예정 _쪽필름) ====

 

p.34

하단 각주 1)에 레베카 위프스 브록(Rebecca Wifs-Brock)이 아래와 같이 바뀌어야 합니다.

-> 레베카 프스 브록(Rebecca Wirfs-Brock)

 

p.130 상단 예제 코드 (이재용 님(lastiverse@gmail.com)의 가이드입니다.)

public void testReduceMoneyDifferentCurrency() {
Bank bank = new Bank();
bank.addRate(“CHF”, “USD”, 2);
Money result = bank.reduce(Money.franc(2), “USD”);
assertEquals(Money.dollar(1), result);
}

문제가 되는 부분: “bank.addRate(“CHF”, “USD”, 2);”

Bank.addRate() 함수가 아직 추가되지 않은 시점입니다.
따라서 컴파일 에러가 떠야하는 상황인데 저자가 제시하는 테스트 주도 개발 방법의 프로세스에 따라서 “아직 작성되지 않은 함수를 미리 테스트 코드에서 사용하고 이 테스트 코드가 정상 작동되도록 실제 코드를 수정”하는 흐름이라면 아직은 틀린게 없습니다.
하지만 예제코드 바로 아래 문단에 저자는 “다음 한 줌의 지저분한 코드면 초록 막대를 볼 수 있다”고 서술하고 있는데요. 그 “한 줌의 코드”라는데 Money 클래스의 reduce() 함수를 수정하는 것이었습니다.
따라서 reduce() 함수만 수정한 해당 시점에는 테스트 코드가 성공할 수 없고 따라서 초록 막대를 볼 수 없습니다.