
창발(創發) : 하위 계층(구성 요소)에는 없는 특성이나 행동이 상위 계층(전체 구조)에서 자발적으로 돌연히 출현하는 현상
단순하지만 중요한 네 가지 규칙을 따라 설계를 하면, 창발성이 촉진되어 우수한 설계를 완성할 수 있게 된다.
TEMPLATE METHOD PATTERN은 고차원 중복 제거를 위한 기법이다.1. 좋은 이름을 선택한다.
2. 함수와 클래스 크기를 가능한 줄인다.
3. 표준 명칭을 사용한다.
4. 단위 테스트 케이스를 꼼꼼히 작성한다.
가장 분량이 짧은 챕터였던 것 같다. 하지만 중요한 규칙 네 가지를 정리해주어서 다시 한 번 머리에 새기고 넘어갈 수 있는 계기가 되었다. 코드는 나 혼자 짜고 나만 보는 것이 아니라, 남이 봤을 때도 이해가 잘 되어야 하기 때문에 항상 가독성을 염두에 두고 깨끗한 코드를 짜야 한다.
개발자로써 취업할 회사를 살필 때는 개발 문화가 어떤지, 코드 리뷰 문화가 활성화되어 있는지 꼭 살펴 보라는 말을 들었었다. 개발 문화가 잘 잡혀 있고 코드 리뷰를 열심히 하는 회사일수록 업무 만족도가 높다는 것이 그 이유였다. 책을 읽기 전에는 코드 리뷰의 필요성이 크게 와닿지 않았다. 하지만 책을 읽으면서, 내가 짠 코드를 활발하게 공유하고, 다른 사람 코드도 살피면서 함께 발전시키는 방식은 코드의 가독성을 높일 것이고 시스템의 통합도도 향상시킬 것 같다는 생각이 들었다. 비록 검토하는 게 번거롭고 상당한 시간이 소요되는 작업이겠지만, 결과적으로는 회사 뿐만 아니라 개발자 자신의 능력 발전에도 큰 도움이 될 것 같다는 것이다.
아무튼, 작은 프로젝트를 진행할 때도 네 가지 중요한 원칙을 바탕으로 깨끗한 코드를 위해 노력하고, 혼자 발버둥칠 것이 아니라 팀원들과 같이 이해하고 발전시킬 수 있도록 노력해야겠다고 다짐했다.