2007/07/10 22:40 Developer
Agile - YAGNI의 원칙과 점진적인 설계, 테스트하기 쉬운 아키텍쳐
You are not gonna need it.
최소한의 설계를 하자는 것이 YAGNI의 원칙이다.
점진적인 설계
- 프로그래밍이 계속되는 한 설계를 계속된다.
- 단순한 설계를 목표로 한다.
- 패턴은 신중하지만 적극적으로 적용한다.
- refactoring으로 좋은 설계를 유지한다.
- agile방식으로 개발할 경우 테스트 자동화가 필수다.
테스트하기 쉬운 아키텍쳐
- 단위 사이의 의존관계를 줄여서 단위 테스트를 쉽게 한다
- 의존관계를 명확히하면, 테스트할 범위를 작게 나누는 것도 가능하다.
- 패키지 범위의 가시성을 이용하여 공개 인터페이스를 한정한다.
가장 확실한 방법이다. 이책에서 가장 훌륭한 말인 듯하다. 감동이다.
테스트하기 어려운 부분에는 가능한 로직을 포함하지 않는다.
테스트에 관심을 보이지 않는 것은 변화를 하지 않겠다는 이야기와 같다.
점진적인 설계와 변경대한 능동적인 대처에 중심에는 테스트 자동화가 있어야 한다.
최소한의 설계를 하자는 것이 YAGNI의 원칙이다.
언젠가는 필요할 것이라는 예측은 대부분 맞지 않는다. 필요할 때에 최소한의 설계를 하자.
점진적인 설계
- 프로그래밍이 계속되는 한 설계를 계속된다.
- 단순한 설계를 목표로 한다.
- 패턴은 신중하지만 적극적으로 적용한다.
- refactoring으로 좋은 설계를 유지한다.
- agile방식으로 개발할 경우 테스트 자동화가 필수다.
테스트하기 쉬운 아키텍쳐
- 단위 사이의 의존관계를 줄여서 단위 테스트를 쉽게 한다
- 의존관계를 명확히하면, 테스트할 범위를 작게 나누는 것도 가능하다.
- 패키지 범위의 가시성을 이용하여 공개 인터페이스를 한정한다.
가장 확실한 방법이다. 이책에서 가장 훌륭한 말인 듯하다. 감동이다.
테스트하기 어려운 부분에는 가능한 로직을 포함하지 않는다.
테스트에 관심을 보이지 않는 것은 변화를 하지 않겠다는 이야기와 같다.
점진적인 설계와 변경대한 능동적인 대처에 중심에는 테스트 자동화가 있어야 한다.
