TDD 때문에 좌절을 경험한 개발자에게 들려주는 TDD 이야기!
테스트 주도 개발(Test-Driven Development)이라 불리는 TDD는 개발자 사이에서 많은 이슈가 되었고, 현재도 관심을 많이 받고 있다. 하지만 TDD의 유명세에도 불구하고, TDD를 실제로 적용해보거나 학습해보려는 관심과 호기심은 부족하다. 왜일까? 아마도 TDD에 대한 잘못된 지식이나 고정관념, '테스트 코드를 먼저 만든다'는, 지금까지 체험하지 못한 개념 때문일 것이다. TDD가 관심을 받는 데는 분명 그만한 이유가 있다. TDD는 프로젝트 진행뿐만 아니라 개발자의 능력을 높이는 데에도 도움을 주는 것으로 알려져 있다. 하지만 TDD를 하는 것은 무척 어렵고 복잡하다는 이야기도 있다.
이 책의 저자는 TDD를 실무에 도입하면서 겪었던 좌절과 TDD에 대한 오해, 그리고 이를 해결해 나가면서 배운 것들을 담았다. 이를 통해서 TDD를 실무에 어떻게 적용할 수 있는지와 실무 팁을 배울 수 있다. 또한, TDD가 어렵고 복잡하다는 오해를 풀고, 왜 TDD를 사용해야 하는지 알게 될 것이다.
대상 독자
- TDD를 공부했으나, 여러 가지 풀리지 않는 문제점으로 인해 끙끙대는 프로그래머
- TDD 도입에 실패했지만 다른 방법을 모색하여 도입에 성공하고 싶은 프로그래머
- TDD를 두 번 다시 하고 싶지 않은 프로그래머
TDD 도입에 실패한 원인을 알아야 TDD가 보인다!
이 책은 TDD 관련 배경 지식을 기반으로 현업에서 활용되거나 이슈가 되는 문제들을 다루고 있기에 실제로 TDD를 다루며 겪는 문제의 실마리를 푸는 데 유용할 것이다. 또한, TDD와 관련한 깊이 있는 메시지와 아이디어를 제공하므로, TDD의 활용도를 한 단계 높이는 계기를 마련해줄 것이다. 예로는 자바 콘솔 애플리케이션을 대상으로 한 예제와 간단한 객체 지향이론, UML 클래스 다이어그램 정도가 인용되고 있으며, 복잡하지 않은 GoF 디자인 패턴 몇 개를 소재로 삼고 있다.
이 책은 다음과 같이 구성되어 있다.
'1장 반가워 TDD'에서는 저자의 경험을 토대로 TDD가 왜 좋으며, 왜 사용해야 하는지를 알려준다.
'2장 TDD에 관한 오해와 진실'에서는 개발자들이 TDD에 관해서 가지고 있는 오해를 풀어보고 진실이 무엇인지 알려준다.
'3장 현장 이야기'에서는 Mock 객체, Fixture, TDD와 디자인 패턴, private 메서드, 레거시 코드를 TDD에서 어떻게 사용해야 할지 알려준다.
'4장 TDD, 올바른 사용과 사용 습관'에서는 TDD를 어떻게 사용해야 하는지, 그러고 어떻게 시나리오를 구성하고 단위 테스트를 해야 할지를 알려준다.