2주차 책 집필 용어, 디파이(DeFi)
※ 계약서에 '책 내용 전체를 포스팅에 옮길 때 제한'이 있어 일부만 포스팅했습니다.
TDD란?
소프트웨어 개발방법론 중의 하나로써 Red, Green, Refactor라는 총 3단계의 사이클을 가지고 있습니다. 구현을 위한 테스트 코드 작성을 한 이후 최소 구현 코드를 작성하고, 리팩터링 구현하는 과정을 거치며 개발하는 코드에 대해 이 사이클을 점진적으로 반복해 나가며 개선합니다.
- Red 단계: 개발하고자 하는 것이 무엇인지 고려한 후 먼저 테스트 코드를 작성합니다.
- Green 단계: 테스트 코드를 성공시키게 하기 위한 최소화된 코드를 작성합니다.
- Refactor 단계: Green 단계에서 구현된 최소화된 코드를 가지고 중복 코드 제거 및 효율적으로 개선할 수 없는지 등을 고려하여 리팩터링을 수행 및 구조화 합니다.
역사
TDD(Test–Driven Development)는 Kent Beck이 그의 책 『Test-Driven Development by Example』에서 소개한 방법론의 이름입니다. 1990년대 후반에 Extreme Programming의 일부로 Kent Beck에 의해 개발 되었습니다. 본질적으로 시스템 기능을 구축하며 세 가지 단계(Red, Green, Refactor)를 반복적으로 수행합니다. 또한 Kent Beck은 2003년에 “TDD가 단순한 설계를 장려하고, 자신감을 불어넣어준다”고 말했습니다.
Beck의 테스트 주도 개발 개념은 두 가지 기본 규칙을 중심으로 합니다.
- 자동화된 테스트에 실패한 경우가 아니라면 한 줄의 코드도 작성하지 않습니다.
- 중복을 제거합니다.
여기에 더불어 한 가지 중요한 측면은 리팩터링에 대한 강조입니다. 즉, 깔끔한 코드를 유지하기 위해서 리팩터링 하는 것은 TDD 프로세스의 핵심 부분입니다.
자세한 내용은 책으로 만나요 :)
참고자료
https://www.codecademy.com/article/tdd-red-green-refactor
https://www.youtube.com/watch?v=g4MdUjxA-S4
최근댓글