2019년 2월 첫날.
이번엔, 파이썬 웹 프로그래밍에 관한 책이다.
웹 프로그래밍이어서라기보단, 파이썬 웹 프로그래밍이었기에, 그리고 그냥 파이썬 웹 프로그래밍이라기보단, 장고로 개발하는 책이었기에 이 책을 선택하게 되었다.
사실 책 자체의 주제는 특별할 것은 없어 보였지만, 개정판이기에 최신의 내용을 담겨 있을 것이라는 기대감으로 시작하기도 하였다.
책 이름은 "파이썬 웹 프로그래밍(개정판): Django(장고)로 배우는 쉽고 빠른 웹 개발" 이다.
표지로는 파이썬을 의미하는 뱀 그림이 나왔다.
특별히 이 개정판의 특징을 아래에 크게 표시해놓았는데, 파이썬 3.x, 장고 2.x 버전 반영이다.
또한 Windows 환경 개발 환경 구성, Linux 환경 웹 서버 연동이 특징이다.
최신이라는 것. 장고 버전은 잘 모르겠지만, 파이썬의 버전은 3.x로 마이그레이션 할 필요가 있는 시대이기 때문에 의미가 있다고 생각했다.
초판 발행은 무려 약 4년전. 대신 개정판은 약 6개월전 발행이었다.
그래도 개정판이 나오고, 그것도 2쇄까지 나온것을 보면 나름 적잖이 많이 팔렸나보다.
책의 초반부이다. 환경에 대한 설명이 나오는데, 환경 설명은 매우 마음에 들었다.
2018-2019년을 반영하는 버전들이기 때문이다.
물론 파이썬은 3.7 버전이 최신이긴 하지만, 입문자가 진행하기에 3.6과 3.7은 큰 문제가 되지 않는 상황이다.
그 밖에도 안정화된 최신버전인 윈도우즈 10 도입은 매우 잘한 것 중 하나라고 생각한다.
목차는 다음과 같다.
총 9개의 챕터, 4개의 부록으로 되어있다.
CHAPTER 01. 웹 프로그랭의 이해
CHAPTER 02. 파이썬 웹 표준 라이브러리
CHAPTER 03. Django 웹 프레임워크
CHAPTER 04. Django의 핵심 기능
CHAPTER 05. 실습 예제 확장하기
CHAPTER 06. Django의 웹 서버 연동 원리
CHAPTER 07. Cloud 서버에 Django 배포하기
CHAPTER 08. Apache 웹 서버와 연동
CHAPTER 09. NGINX 웹 서버와 연동
APPENDIX A. 외부 라이브러리 requests, beautifulsoup4 맛보기
APPENDIX B. 장고의 데이터베이스 연동
APPENDIX C. HTTP 상태 코드 전체 요약
APPENDIX D. PyCharm 무료 버전 사용하기
이다.
제목 중 Django를 표현하기 위해 챕터에서는 영어를 사용했는데, 부록에서는 한글로 적혀있다. 좀 특이하다고 생각했다. 중간에는 섞어쓰는건 괜찮아도 제목에서는 둘 중하나로 통일하는것이 좋아보였을 듯 싶다.
또한, 전체적인 챕터의 순서가 한눈에 들어오는 느낌은 아니라 아쉬웠다.
챕터의 간지이다. 여백의 미 한껏 살렸다.
좀 심심하기는 하다.
챕터 내의 소제목 나열이다.
이 챕터의 목표와 이루고자 하는것이 있으면 좋았을텐데, 이 역시 여백의 미가 채운 느낌이었다.
웹 프로그래밍에 대한 간략한 이해를 돕기 위한 도입부다.
특별할 것은 없다.
URL 설계에 대한 내용이 나온 부분이다.
구성 항목에 대해 영문 표현을 한글로 적은 부분들인데, 대부분은 괜찮았지만, '프라그먼트'는 영어로 어떻게 썼는지가 궁금해졌다. Fragment인가? 이럴 가능성이 있는 경우 한글과 함께 영문을 같이 곁들이면 좋을 것 같다.
커맨드라인 중심의 예제가 나오는 부분이다.
C:RedBook을 표시하면서 나온 부분때문에 살짝 헷갈리긴 했다. 전반적인 내용이 많기 때문에 입력하는 부분은 하이라이트 해주었다면 좀 더 보기 쉬었을 것 같다. 현재는 인풋과 아웃풋이 동일한 텍스트 서체와 컬러로 되어있다.
또한 이 예제의 내용에서 중요한 부분만 강조해도 좋았을 것 같다.
소스의 스크립트에 대한 내용이다.
노트패드로 작성했다는 것을 강조하고 싶은 내용이었을지는 모르나, 개인적으로는 위의 세줄이 미스라고 생각 되었다.
차라리 소스 내용만 박싱해서 들어있고, 이 소스의 상대경로를 위에 적어주는것이 깔끔해 보인다.
프로젝트의 뼈대가 나오는 부분이다.
이러한 방식으로 나와있다.
이 책을 추천하는 사람은 다음과 같다.
1. 파이썬 기본기를 다진 초급 개발자
2. 다른 언어를 사용하다 파이썬으로 전환하려는 웹 개발자
3. 스타트업처럼 빠르게 웹 서비스를 구축하려는 조직의 개발자
즉, 완전 초보 입문자를 위한 책은 아니다.
하지만, 그렇다고 구성까지 목표를 명확하게 알 수 없게 해놓은것은 매우 아쉬운 부분이라고 생각되었다.
차라리, 웹 서비스에 대한 설명을 초반에 줄이더라도, 장고 자체에 대해서 디테일하게 다루며, 프로젝트의 구성 중 어떤 부분이 의미가 있다는 것을 알 수 있도록 하는게 좀 더 낫다고 생각했다.
또한 여기서 나온 것을 실습하다가 pip설치도 안되어 있는 환경에서 책에 나온대로 하려다가 애를 먹었다.
(결국 다른 방법으로 해결..)
이 책이 개정판이었기에 더 아쉬웠다. 초판의 아쉬움을 많이 개선했을 것이라고 기대했기 때문이었다.
정리하자면..
장점으로는
- 장고에 대한 파이썬 최신버전으로 다룬 책이 흔치는 않기 때문에 가치가 있다.
- 실제 퍼블리싱을 고려하여 nginx와의 연동에 대해 어느정도 자세히 다뤘다.
아쉬운 점으로는
- 구성이 이해하기 어려운 편이다.
- 전체의 목적을 이루기 위한, 각 챕터와 소챕터간의 목표를 또렷이 알기 어렵다.
- 다이어그램 표현방법과 코드 표현방법이 이해하기 어렵게 되어있다.(강조가 부족하다)
- Input/Output의 경계가 모호하다.(어떤 Output은 너무 캡쳐 티가 난다.)
- 명확하게 만들고자 하는 예제가 분명하지 않으며, 따라서 계속 실습하며 읽기는 시간이 많이 걸린다.
- 실습 예제를 따라하며 진행하기에 책에 나온대로 실행이 잘 되지 않는 부분이 많다.
이 책을 다음과 같이 평가해 보았다.
가격: 8 / 10
내용: 6 / 10
디자인: 5 / 10
구성: 4 / 10
저자: 김석훈
대상자: (제 생각으론) 이미 장고를 과거버전으로 진행한 이력이 있으며, 웹 개발도 어느정도 진행해 보았고, 다만 퍼블리싱에 필요한 내용이 궁금해서 찾아보는 형식으로 되어있는 책이 필요한 개발자(초보는 안될듯)
가격: 22,000원
전체 페이지: 368페이지
이 리뷰는 "한빛미디어"를 통해 도서를 제공받아 작성하였습니다.