본문 바로가기

책을 보다

[후기] 따라가기만 하면 Python을 알 수 있는 Head First Python

마치 과외선생님이 옆에 앉아 가르치는 느낌입니다. 왜 이렇게 생각했는가 하면 읽어가는 도중에 옆길로 빠지지 않도록 붙들어 주는 장면이 곳곳에 있기 때문입니다. Head First 시리즈의 특징인, 코드, 설명, 그림, 말풍선, 연습문제가 딴 생각을 못하게 합니다. 조금 심하게 얘기하면 끊임없는 자극을 통하여 전달하고자 하는 내용을 머리속에 우겨넣는 느낌입니다.

 

예를 들면, 자료구조를 알려주고 리스트만으로 어떤 문제를 해결하라고 던져줍니다. 그러면 읽는 이가 '자료구조 가운데 집합을 이용하면 쉬울텐데 왜 굳이 리스트로?' 라는 의문을 가질 때쯤 한마디 던집니다. '알고 있다. 집합을 사용하면 되지만, 여기서는 리스트를 좀더 깊이 이해하는데 초점을 두고 있다. 단순히 생각할 수 있는 것보다 더 유용하게 사용할 수 방법들이 있으니 머리를 굴려보라'고 주문합니다. 나름 답변을 생각하고 다음 페이지로 넘어가면 '오호~ 이런 식으로 사용할 수 있단 말이지!'라는 생각이 들게 합니다. 그러다보면 조금더, 조금더 진도를 나가고 있는 자신을 볼 수 있습니다.

 

Python 의 주요 특징 가운데 반드시 알아야 할 몇 가지에 집중하고 있습니다. 그렇지만 문법이 가지는 특징이나 예약어, 구문을 따로 정리해 놓지 않았습니다. 그때그때 필요한 만큼만 설명하고 있습니다. 그렇기에 사전처럼 어떤 기능이나 문법을 찾아보기에는 맞지 않습니다. 한가지 주제를 두고 풀어나가면서 필요한 기능이나 구현을 보여줍니다. 그리고, 조금씩 확장합니다.Python 의 기능이나 사용법을 하나씩 알아간다기보다 Python 자체를 느끼면서 익숙해져 가는 방식이라 할 수 있습니다. 상세페이지 바로가기

 

프로그래밍을 처음 접하는 사람에게는 내용이 다소 버거울 수 있을 듯 합니다. 어떤 언어든 프로그래밍 경험이 있으면서 Python 을 알고자 할 때 보시면 큰 도움이 될 것 같습니다.

 

1장에서 Python 을 실행하는 기초 내용을 얘기합니다.
2, 3장에서 내장된 자료구조를 설명하고 어떻게 사용하는지 알려줍니다.
4장에서 함수와 모듈을 설명합니다. 앞에서 얘기한 자료구조를 함수 활용에 엮어놓았습니다.
4장을 마칠 때 쯤이면 피로감과 함께 지친다는 느낌을 가질 수 있습니다. 다양한 자극이 학습에 도움되지만 그만큼 에너지를 많이 소모시키는가 봅니다.


5장에서 웹앱으로 실제 써먹을 수 있는 뭔가를 해보자고 부추깁니다. 그리곤 은근슬쩍 서드파티 모듈을 어떻게 사용하는지 넣어놓습니다.
6~11장까지 웹앱을 보완하면서 Python 을 사용하며 알아야 할 것들을 하나씩 꺼내보여 줍니다.
9장 컨텍스트 관리 프로그램: with 문과 연결하기에서 코드를 간결하게 하는 방법과

10장 함수 장식자로 유연하게 함수 기능을 확장하는 내용은 흥미진진합니다. 다만, 기본 기능에 충실하다보니 뭔가 설명이 부족한 느낌이 있습니다.
11과 3/4장 쓰레드 맛보기는 Python 에서 쓰레드 사용을 소개하고 있습니다. 이렇게 할 수도 있다고 알려주는 정도입니다.


12장 고급 반복은 컴프리헨션을 어떻게 구성하는지 알려줍니다. Python 의 컴프리헨션이 궁금하다면 12장만 읽어도 충분할만큼 잘 설명하고 있습니다. 더하여 제너레이터(생성자)도 설명하고 있습니다.

 

1장에서 12장 마칠때까지 먼저 나왔던 내용을 은연중에 계속 반복하고 변형합니다.

 

한번 읽고나면 느껴지는 Python 때문에 다시 읽고 싶어지는 책입니다.

 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

반응형