본문 바로가기

Better SW Development

[dW Review] 혁신적인 아키텍처와 창발적 설계: 테스트 주도 설계

* dW Review, 이번 달은 조금 짧게 리뷰할 예정입니다. 너그럽게 봐주세요~ :) 


꽤 괜찮은 TDD관련 글입니다. 영문의 경우 그냥 훝어 읽었는데, 한글로 다시보니 많이 새롭습니다.(응??)

여하튼... 언제나 그러한, 조금은 매니악한 닐포드의 글 되겠습니다.

혁신적인 아키텍처와 창발적 설계: 테스트 주도 설계, Part 1

http://www.ibm.com/developerworks/kr/library/j-eaed2/index.html

테스트를 통한 설계 진행 및 개선
 

혁신적인 아키텍처와 창발적 설계: 테스트 주도 설계, Part 2

http://www.ibm.com/developerworks/kr/library/j-eaed3/index.html

테스트를 통한 설계 진행 및 개선에 관한 추가 정보



인상깊은 문구

  • TDD 코딩을 위한 주문은 "테스트를 작성할 수 있는 가장 간단한 것은?"이라는 질문이다.
  • 테스트를 통해 드러나는 유익한 특성 중 하나는 응집력이 높은 메소드이다.
  • 테스트에서 적당한 반복은 허용해야 한다
  • 개발자가 새로운 기능을 개발하기 위한 최초의 테스트를 작성할 때 성공보다는 오히려 실패할 테스트를 작성해보도록 권장한다. 
  • TDD 버전이 사후 테스트 코드(=업무코드 작성한 다음에 테스트 코드를 작성하는 것)보다 3배 이상 간결하다. 


Composed method 패턴

  • 식별 가능한 하나의 태스크를 수행하는 메소드로 프로그램을 나눈다.
  • 같은 추상 레벨에 있는 메소드에 모든 연산을 유지한다.
  • 그러면 자연스럽게 프로그램이 다수의 작은 메소드로 나뉘며, 각 메소드의 길이는 몇 행에 불과하다.