TDD의 핵심을 보통 테스트라고 생각합니다. 물론 TDD에서 테스트는 매우 핵심적인 부분이나 TDD를 이야기한 켄트벡은 TDD에서 테스트는 ‘의도치 않은 유용한 부산물’이라고 표현합니다. 즉 테스트는 매우 유용하고 중요하나 더 본질적인 TDD의 목표는 아닙니다. TDD에서 중요한 핵심은 결정과 피드백 사이의 갭에 대한 인식과 그 갭을 조절하기 위한 테크닉입니다.
내가 작성하고자 하는 코드에 대한 결정에 대해 언제 피드백 받을 것인지 인식하고 그 갭을 조절해 나갈 수 있다는 것인데요. 이 과정을 통해 우리는 내가 작성한 코드에 대해 빠르게 피드백을 받을 수 있습니다. 그리고 그 과정에서 만들어진 유용한 테스트 코드는 유용한 부산물이 되어, 미래의 나와 다른 사람들에게도 유용하게 활용될 수 있는 가치를 지니게 되는 것입니다.
그래서 이번 강의에서 우리는 TDD의 핵심 철학을 기반으로 결정과 피드백 사이의 갭을 인식하고 문제를 해결해 나가는 경험을 할 예정입니다. 그리고 그 과정에서 자연스럽게 유용한 부산물인 테스트 코드 또한 만들어 나갑니다.
현재 강의는 첫 번째 온보딩을 위한 계산기 미션을 업로드 하고 있는 중입니다. 나머지 강의들도 아래와 같은 커리큘럼으로 오픈할 예정이니 참고 부탁드립니다.