콘텐츠로 이동

TDD 실전 강의 교재 — 35편 인덱스 (32장 + 부록 2 + 마치는 글)

무엇인가

Kent Beck Test-Driven Development: By Example (2002) 의 3부 32장 + 부록 A·B + 마치는 글 을 Java/Spring 백엔드 입문~중급 수강생용 강의 교재로 풀어 쓴 자료.

→ 책 카드는 entity-tdd.

실습 환경과 장별 루틴

먼저 guide-java-book-study-lab의 Java 17 + JUnit 5 환경을 준비한다. 2부 xUnit 예제는 책 흐름을 살리기 위해 Python 3으로 따라 해도 좋다.

각 장은 같은 순서로 진행한다.

  1. 할 일 목록에서 가장 작은 항목을 고른다.
  2. 실패 테스트 또는 실패하는 실행 결과를 먼저 만든다.
  3. 가장 빠른 초록을 만든다.
  4. 중복·이름·책임을 정리한다.
  5. 실패 메시지와 최종 인사이트를 한 줄로 기록한다.

2부 xUnit은 testcase.py 한 파일에서 시작해도 된다.

python3 testcase.py

35편 인덱스

1부 화폐 예제 (17편)

주제 본문
1 Money 객체 — 시작 lecture-tdd-ch1
2 타락한 객체 (부작용 제거) lecture-tdd-ch2
3 모두를 위한 평등 (equals) lecture-tdd-ch3
4 프라이버시 (private) lecture-tdd-ch4
5 솔직히 말하자면 (Franc 추가) lecture-tdd-ch5
6 돌아온 평등 (슈퍼클래스 추출) lecture-tdd-ch6
7 사과와 오렌지 (통화 비교) lecture-tdd-ch7
8 객체 만들기 (정적 팩터리) lecture-tdd-ch8
9 times 슈퍼클래스화 lecture-tdd-ch9
10 times 통합 lecture-tdd-ch10
11 자식 클래스 제거 (Money 단일) lecture-tdd-ch11
12 드디어 더하기 (Expression 도입) lecture-tdd-ch12
13 Bank 도입 (환율) lecture-tdd-ch13
14 Pair (컬렉션 키) lecture-tdd-ch14
15 $5 + 10 CHF (드디어 완성) lecture-tdd-ch15
16 times 추상화 lecture-tdd-ch16
17 Money 회고 lecture-tdd-ch17

2부 xUnit 예시 (7편)

주제 본문
18 xUnit 첫걸음 lecture-tdd-ch18
19 테이블 차리기 (setUp) lecture-tdd-ch19
20 뒷정리 (tearDown) lecture-tdd-ch20
21 셈하기 (TestResult) lecture-tdd-ch21
22 실패 처리 lecture-tdd-ch22
23 TestSuite lecture-tdd-ch23
24 xUnit 회고 lecture-tdd-ch24

3부 TDD 패턴 (8편)

주제 본문
25 TDD 패턴 (일반) lecture-tdd-ch25
26 빨강 막대 패턴 lecture-tdd-ch26
27 테스팅 패턴 lecture-tdd-ch27
28 초록 막대 패턴 lecture-tdd-ch28
29 xUnit 패턴 lecture-tdd-ch29
30 디자인 패턴 lecture-tdd-ch30
31 리팩토링 lecture-tdd-ch31
32 TDD 마스터하기 lecture-tdd-ch32

부록 (3편)

주제 본문
부록 A 영향도 (개발자·코드·설계·팀·비즈니스) lecture-tdd-appendixA
부록 B 피보나치 (짧은 사이클 사례) lecture-tdd-appendixB
마치는 글 Martin Fowler — TDD 균형 lecture-tdd-afterword

5권 도서 오각형

단위 시점
오브젝트 객체 처음부터
Effective Java 메서드·필드 매번 짤 때
리팩터링 변환 이미 짠 코드
Clean Code 줄·이름 매 라인
TDD 사이클 코드 짜기 전

→ 5권이 한 세트. TDD 가 "과정" 을 담당.

활용 가이드

목적 추천 진입점
TDD 입문 1부 1·2·3·4·5장 — 짧고 강력
JUnit 깊이 2부 18~24장 — xUnit 자체
패턴 사전 3부 25·28·30장
Fowler 시각 마치는 글

관련 페이지