현재의 인프라를 다져논 대가들은 절대 테스트케이스로 때려서 개발하지 않는다.

책으로 클린스타일을 먼저 배우고 햇갈리지 않는 테크닉들을 배운다.
그리고 나서 기본적인 정렬 이나 유명한 알고리즘들을 달달달 외워줄 필요가 있다. 피아노를 배울 때 악보의 손가락번호를 지켜야 하는 것과 정확히 이유가 같다

그리고나서 종이와 펜으로 설계를 하고
테스트는 맨 마지막에 해서 실질적으로 설계가 90%가 되어야한다. 인풋과 아웃풋의 집합관계를 수학적으로 증명할 수 있다면 그 알고리즘이 비로소 완전해지는거다.

그 설계를 공부하는게 알고리즘이지 테스트케이스 채로 다지듯 때려맞추는 과정이 아니라는 거다.

후자는 결국 썩기 직전의 코드밖에 만들지 못하고
전자는 영속적인 도자기같은 코드를 만든다