728x90 template method1 12. 창발성 창발성은 하위계층(구성 요소)에 없는 특성이나 행동이 상위계층(전체 구조)에서 자발적으로 돌연히 출현하는 현상이다. 예컨데, 개미 한 마리는 집을 지을 지능이 없다. 하지만 큰 집단의 개미들은 서로 상호작용하며 하나의 집을 만들어 내는 것이 창발이다. 여기 따르기만 해도 우수한 설계가 나오는 간단한 규칙이 있다. 이 규칙들은 우수한 설계의 창발성을 촉진한다. 1. 모든 테스트를 실행한다. 2. 중복을 없앤다. 3. 프로그래머 의도를 표현한다. 4. 클래스와 메서드 수를 최소로 줄인다. 모든 테스트를 실행한다. 문서로 설계를 완벽히 했어도 시스템이 의도한 대로 돌아가는지 검증할 간단한 방법이 없다면, 문서 장성을 위해 투자한 노력에 대한 가치를 인정받기 힘들다. 테스트가 불가능한 시스템은 검증도 불가능하다.. 2022. 2. 2. 이전 1 다음 728x90