티스토리 뷰

Hobby/Book

[Book] Head First C

생각많은 소심남 2012. 12. 17. 01:29

최근 요 몇주동안 시간내서 읽었던 책이 바로 이 head first C 입니다.



그런데 제 생각에는 위와 같이 뭔가를 쓸 수 있는 펜이 같이 있어야 될 듯합니다. 정말로 이 책은 무언가를 계속 쓰면서 손코딩을 하는 것을 추구하고 있습니다.


사실 아시는 분은 아시겠지만 Head First 시리즈는 O`reilly 사의 초보자를 위한 가이드북을 모아둔 시리즈입니다. 2003년에 처음으로 나워서 지금까지 계속 시리즈물로 나오고 있지요. 물론 저자가 다 같은건 아닙니다.


<http://headfirstlabs.com/>


분야도 참 많습니다. 지금 소개해드리는 프로그래밍 관련 책들도 있지만 Algebra를 다룬 책도 있습니다. 

무엇보다도 이 단행본 시리즈가, 그것도 공학이라는 생소한 영역에서 오랫동안 출판할 수 있었던 이유는 책에서만 찾아볼 수 있는 재미가 아닐까 싶습니다. 책들을 살펴보시면 정말로 곳곳에 깨알같은 재미가 있습니다.



보통 프로그래밍 교육서가 인기를 못끄는 이유는 딱딱한 문체에 이론적인 내용이 가득해서 일 겁니다. 첫장을 여는 순간 뭔가 친절하게 알려주는 것 없이 머리속에 집어넣는 듯한 느낌은 집중할 수 있는 기회를 많이 박탈합니다. 보통 우리나라 고등학생들이 수학 분야에서 가장 잘하는 파트가 '집합'이라는 우스갯소리도 있습니다. ( 그 이유는 수학의 정석 첫장이 집합이라는 말이 있지요.) 

 그런데 헤드퍼스트 시리즈는 첫 장부터가 위의 사진으로 시작합니다. 과연 어떤 저자가 연애와 프로그래밍을 연관시킬 생각을 했을까요? 



앞에서 말했던 것처럼 이 책은 뭔가를 계속 쓰게끔 하고 있습니다. 부분부분에 빈 여백을 두고 거기에 문제의 답을 적게 함으로써 뭔가 머리속에 맴돌고 있는 듯한 코드를 직접 구현할 수 있게끔 도와주지요. 사실 이 책의 서두에 있는 '두뇌를 정복하는 방법' 이라는 부분중에는 직접 메모하라는 말이 나와있습니다. 저도 이 걸 그대로 따라가고 있고, 정말로 기존에 중요하다고 생각한 부분을 대충 알고 있었다는 것을 느낍니다. 메모를 하면서 그런 부분에 대해 개선을 할 수 있었던 것 같습니다.


 이 책에는 정말로 재미있는 예제들이 많이 있습니다. 심지어는 구글 맵스를 사용해서 버뮤다 삼각지를 찾는 예제도 있습니다.



물론 위의 예제는 단순한 텍스트 문서에 들어있는 위도 경도의 위치를 표현해주는 문제였지만 실은 파일의 입출력과 redirection을 설명하기 위한 예제였습니다. 이렇듯 하나씩 해보면서 시각적으로 금방 와닿는 결과로 나오기 때문에 C를 처음 다루는 사람에게 있어서는 좋은 교재가 될 듯합니다.


사실 저는 프로그래밍에 대해서 너무 아는 척을 많이 했던 것 같습니다. 그냥 구현이 우선시되어서 남이 만들어놓은 유용한 소스를 긁어다가 제 걸로 만들면서 정말로 본질적인 원리와 개념에 대해서는 조금 소홀히 했었습니다. C언어라면 정말 모든 언어의 기본이 되면서 중요한 원리가 담겨져 있지만, 저는 그런 것들의 중요성보다는 그냥 눈으로 드러나는 결과를 원했던 것 같습니다. 그래서 늦긴 했지만 지금이라도 조금 쉬운 참고서를 보면서 배워나가고 있습니다.

 그런 와중에 접하게 된 이 책은 정말 좋은 책인 듯 합니다. 물론 실력있는 프로그래머가 찾는 스킬은 이 책에선 없습니다. 하지만 스킬보다도 저같은 초보 개발자한테 필요한 건 쉽게 설명이 된 내용과 그걸 계속 이끌어나가게끔 도와주는 책이 아닐까 생각합니다. 

댓글