더북(TheBook)

4.2 동작하는 골격

코드를 바꿔야 하는 동기를 찾아보세요. 이런 동기는 실질적으로 코드에 변화를 이끌어내는 수단(driver)으로 작용합니다.

앞에서 이미 이처럼 변화를 불러오는 수단의 몇 가지 예를 살펴봤습니다. 경고를 오류로 취급하거나 린터(linter) 및 기타 정적 코드 분석기(static code analyzer)를 켰을 때 코드를 바꿔야 한다는 외적 동기가 발생합니다. 이런 방법은 주관적인 판단을 어느 정도 배제하기 때문에 도움이 됩니다.

소프트웨어의 변화를 이끌어내는 수단이 무엇인지에 따라, ‘XX-주도 개발’이란 이름의 소프트웨어 개발 방법론들이 나타났습니다.

1. 테스트 주도 개발(Test-Driven Development; TDD)[9]

2. 행위 주도 개발(Behavior-Driven Development; BDD)

3. 도메인 주도 설계(Domain-Driven Design; DDD)[26]

4. 형식 주도 개발(Type-Driven Development)

5. 속성 주도 개발(Property-Driven Development)6

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.