테스트 주도 개발 실전 강의 교재¶
마치는 글 — Martin Fowler¶
책 원본의 마치는 글 (Fowler) 의 메시지 요약.
Fowler 의 TDD 관 (요약)¶
1. TDD 는 디자인 도구¶
테스트 우선이 나쁜 설계를 빨리 알게 함. 결합도 높은 코드는 테스트하기 어려움 → 테스트가 설계 피드백.
2. TDD 는 만능 X¶
- 모든 코드에 100% 적용 어려움
- UI·통합·성능 영역은 다른 도구
- 숙련도 가 결정적
3. 함께 자라는 도구·언어·관행¶
좋은 IDE·테스트 도구·CI·페어 프로그래밍·코드 리뷰가 함께 받쳐줘야 효과 큼.
4. Test-First vs Test-After¶
- Test-First: 설계 피드백·의도 명확
- Test-After: 안전망은 있지만 설계 영향 적음
- Fowler 본인은 상황 따라 혼합
5. Mock 의존도¶
- 너무 많으면 테스트가 구현 디테일 검증 → 변경 시 깨짐
- 적절한 균형 필요 — Mock 사용 기준 명확화
6. TDD 의 가치¶
"테스트를 먼저 쓰면 코드가 더 좋아진다" 는 명제는 보장 X. 하지만 테스트 없이 쓰는 코드보다는 거의 항상 좋다.
마지막 메시지¶
"TDD 를 처음 익히려 한다면, 이 책을 따라 직접 코딩 해라. 읽기만 해서는 안 됨. 손이 익혀야 한다."
본 강의 교재의 마지막¶
32장 + 부록 + 마치는 글까지 완료. Effective Java·리팩터링·Clean Code·오브젝트·TDD 5권 도서 사각형 → 오각형 완성. → entity-tdd / src-tdd-lecture.