소프트웨어 개발 방법론

    [우아한테크코스] 2주차 - TDD(Test Driven Development)

    테스트 주도 개발(Test-driven Development TDD)은 매우 짧은 개발 사이클을 반복하는 소프트웨어 개발 방법론(또는 프로세스) 중 하나입니다. TDD는 단순한 설계를 장려하고 자신감을 불어넣어 주는 역할을 합니다. TDD = TFD(Test First Developent) + 리팩토링 1. 빨강 - 실패하는 작은 테스트를 작성합니다. 처음에는 컴파일조차 되지 않을 수 있지만 일단 작성합니다. 2. 초록 - 가능한 빨리 테스트가 통과하게끔 만듭니다. 테스트가 통과하기 위해서 어떠한 죄악을 저질러도 좋습니다. 3. 리팩터링 - 초록 단계에서 일단 통과하게만 작성한 코드를 완전한 형태로 리팩터링합니다. (매직 넘버, 리터럴 제거 / 중복 제거 등 / 도메인 모델 검증 함수 추가) 죄악이란 기..