코드골프란?
코드+골프?, '코드는 아마도 소스 코드를 말하는 것 같은데, 대체 골프가 왜 튀어나왔지?'라고 생각하는 분들도 계실 것입니다. 아시다시피 실제 골프경기에서도 더 적은 타수를 겨룹니다. 이처럼 코드골프는 프로그램의 소스 코드의 문자수를 줄여서, 가급적 짧게 작성하는 놀이라는 데서 나온 말입니다.
알고리즘이란?
알고리즘이란 도대체 무엇일까요? 프로그램을 작성하면서 종종 듣곤 하지만, 그다지 의식해본적은 없다고 말씀하는 분들도 계실지 모르겠습니다.
알고리즘이란 '계산 방법' 혹은 '계산 순서'와 같은 의미를 가진 단어입니다. 일정한 순서로 계산을 하여, 원하는 결과를 이끌어내는 방법이나 순서, 그것이 알고리즘입니다.
우주탐사선은 정해진 연료로 어떻게 목적지까지 갈까?
코드골프는 가능한 한 적은 타수로 홀 인을 겨루는 게임인 골프처럼, 최대한 짧은 코드로 정해진 출력을 만들어내는 프로그래밍 게임입니다. 하지만 단순히 변수명 수를 줄이고, 빈칸을 없앤다고 해서 미션을 완수할 수 있을 정도로 간단한 건 아닙니다. 그 정도는 프로그램 능력 향상에 도움도 주지 못하는 단순 노가다일뿐이죠.
이 책은 극한의 벽을 뛰어 넘는 아이디어로 더 짧은 코드로 기능을 구현하고자 프레탈, 최단거리 계산 등의 알고리즘을 알려주고 함께 접목합니다. 그렇게 우주탐사선은 정해진 연료로 목적지까지 보내집니다. 단언컨대, 더 나은 프로그래밍 능력을 갖추고자 하는 프로그래머라면 꼭 한 번 읽어보길 바랍니다.