조금 철 지난 유행어지만 테스트 주도 개발(이하 TDD)에 어울리는 표현 같습니다. 켄트 벡이 이 기법을 확립한 이후 이제 TDD는 소프트웨어 개발 세계에서 그다지 낯선 용어가 아닙니다. TDD의 장점은 무엇보다도 한 무더기의 코드와 겹겹이 쌓인 실수 속에서 허우적대지 않고 개발 보폭을 짧게 함으로써 피드백과 리팩터링을 자주 해 생명력 있고 유지 보수하기 좋은 코드를 만드는 데 있습니다.

아무것도 없는 상태에서 TDD로 산뜻하게 출발하면 좋겠지만 현실이 꼭 그렇지만은 않습니다. 기존 라이브러리나 프레임워크를 써야 할 수도 있고, 소스 코드를 볼 수 없는 타사 바이너리와 연동해 개발해야 하는 경우도 있습니다. 이런 경우에는 TDD 자체에 대한 지식 외에도 개발자의 경험과 숙련도가 요구됩니다. 이번에 소개하는 『테스트 주도 개발로 배우는 객체 지향 설계와 실천』은 이와 같은 개발 현실에 TDD를 적용할 때 고려해야 할 문제와 그것을 풀어나가는 유용한 기법들을 설명하는 책입니다.

이 책의 지은이들인 스티브 프리먼과 냇 프라이스는 영국에서 활동하는 개발자로, 켄트 벡의 TDD 이론과 실천에 자신들의 jMock/NMock 개발 경험을 더해, 소프트웨어를 TDD를 바탕으로 객체 지향적, 점진적으로 개발해 나가는 방법을 제시합니다. 이 책에서는 기존 XMPP(또는 재버) 라이브러리와 연동하는 온라인 경매 입찰 프로그램 개발이란 예제를 보이면서 도메인 요구 사항을 분석하고 객체 지향적 설계를 거쳐 TDD로 기능을 하나씩 구현하는 과정을 설명하고 그 과정에서 부딪힐 수 있는 문제를 풀어가는 아이디어를 제안하고 있습니다.

객체 지향 설계와 TDD에 익숙하지 않은 개발자라면 어렵게 느껴질 수도 있겠지만 비슷한 문제를 고민하던 개발자라면 공감할 만한 해법도 있고, 좀 더 숙고해 볼 만한 내용도 있는 책입니다. 다음 인터넷 서점에서 구입하실 수 있습니다.

11번가, 교보문고, 알라딘, 예스24, 인터파크