1장 정리 테스트 시작전에 객체를 만드는 것이 아니라 테스트 작성, 실행 후 생성 테스트 작성 시 operation의 완벽한 인터페이스를 상상하기 TDD 주기 작은 테스트 하나 추가 모든 테스트를 실행해서 테스트가 실패하는 것을 확인 조금 수정 모든 테스트를 실행해서 테스트가 성공하는 것 확인 리팩토링을 통한 중복 제거 -> 다음 테스트로 진행하기 전에 중복을 제거함으로써, 오직 한 가지의 코드 수정을 통해 다음 테스트도 통과되게 만들기