관리 메뉴

TEAM EDA

[나는 리뷰어다] 진지한 파이썬 본문

개인 공간/리뷰

[나는 리뷰어다] 진지한 파이썬

김현우 2021. 2. 16. 15:29


본 포스터는 한빛미디어에서 [나는 리뷰어다]를 통해 책을 지원받아 작성한 리뷰 포스터입니다. 먼저 저는 대학원생이고 대학원에서 파이썬과 파이토치를 이용해서 딥러닝 연구를 하고 있음을 미리 밝힙니다. 책을 읽고 난 느낌부터 말하자면 파이썬을 이용해서 데이터 분석을 하는 학생, 입문자분들에게는 추천드리지 않습니다. 하지만 파이썬을 이용해서 개발을 하시는 분들은 3번쯤은 읽어보면 좋은 책으로 생각합니다.

1. 책소개

많은 분들이 아시겠지만 "진지한 파이썬"은 페이스북과 블로그들에서 몇번 언급되었던 책입니다. 저희 경우도 페이스북의 친구분과 구독하고 있는 블로그 분들의 글을 통해서 책을 처음 접했습니다. 많은 주변 개발자분들이 좋은 평을 해줘서 기대한 점도 있었지만 사실 이 책을 리뷰로 선택한 이유는 책의 소개 문구때문이었습니다.



시중에 나온 파이썬 책은 파이썬을 처음으로 공부하는 사람들을 대상으로 하는 입문서, 머신러닝 교재, 딥러닝 교재 3가지가 대부분입니다. 자바와 C를 사용하는 사람은 전부 개발자들이어서 개발을 위한 고급 책들이 많지만 파이썬을 하는 사람들은 개발보다는 분석, 딥러닝쪽이라 아무래도 어쩔 수 없는 상황이기는 합니다. 하지만 최근들어서 파이썬을 통해서 백엔드 개발과 다양한 개발을 하는 사람이 늘었고 이런 수요에 맞춘 책이다보니 더욱 관심이 갔습니다. (저도 요새 벡엔드쪽에 관심이 있어서 이러한 파이썬 개발책에 더욱 관심이 갔습니다)


진지한 파이썬이라는 제목 처럼 대상 독자는 파이썬 실력을 높이고 싶은 사람을 대상으로 쓰여진 글입니다. 실제 책의 목차를 보면 13개의 챕터로 구성되어있는데 현업에서 6개월 정도밖에 프로젝트를 해보지 못했지만 앞의 3개 챕터에 대해서 중요성은 확실히 느꼈습니다.

  • CHAPTER 1 프로젝트 시작하기
  • CHAPTER 2 모듈, 라이브러리, 프레임워크
  • CHAPTER 3 문서화와 모범 API 사례
  • CHAPTER 4 시간 정보와 시간대 다루기
  • CHAPTER 5 개발한 소프트웨어 배포하기
  • CHAPTER 6 단위 테스트
  • CHAPTER 7 메서드와 데커레이터
  • CHAPTER 8 함수형 프로그래밍
  • CHAPTER 9 AST, Hy, 리스프 계열 속성
  • CHAPTER 10 성능과 최적화
  • CHAPTER 11 확장과 구조
  • CHAPTER 12 관계형 데이터베이스 관리
  • CHAPTER 13 효율적으로 코딩하기

2. 책내용

책의 구성은 "챕터의 내용" + "인터뷰"으로 구성되어있습니다. 읽으면서 도움이 된 부분중 하나는 프로젝트의 설계 부분과 효율적으로 코딩하기이었습니다. 프로젝트를 회사에서 진행할때 사실 아무것도 모른채로 주먹구구식으로 진행했었습니다. 하지만 책의 내용 중에 프로젝트를 어떻게 해야 잘 설계할지에서부터 주의해야할 사항, 팀업시에 어떤 식으로 코딩스타일을 해야할지 등 좋은 내용들이 있었고 이런 점들을 보면서 어느정도 프로젝트 진행사항에 대해서 정리할 수 있었습니다.



그리고 six를 사용해서 파이썬 코드를 예쁘게 짜는 부분이 도움이 많이 되었습니다. 카카오 아레나 대회의 베이스라인 코드를 보면 카카오분들이 six 패키지를 이용해서 코드를 많이 작성해두었는데 처음에는 그 이유를 몰랐지만 책을 읽으면서 2와 3 모두 호환되게 코드를 작성하려고 했다는 이유를 알았습니다. (되게 단순한거였는데 귀찮아서 안찾아봤었네요 ㅎㅎ)


추가로 재밌는 점은 파이썬 개발자들의 인터뷰를 챕터의 마지막에 넣어둔 점입니다. 예를들어, 챕터1의 프로젝트 시작하기를 보면 파이썬 개발자 조슈아 할로가 파이썬에 대해서 한 인터뷰가 있습니다.



이런 인터뷰들을 보면서 소소하지만 여러가지 팁들과 개념들을 익힐 수도 있었습니다.

3. 책 소감

2월 22일이 리뷰작성의 마지막날이어서 아직 책을 다 읽지는 못했지만 굉장히 만족스럽게 읽고 있습니다. 실무에서는 사용하지만 학생이라 몰랐던 내용들이 많이 담겨져 있어서 마음에 들었고 개발자들이 기본적으로 알아야하는 내용들로 구성된게 좋았습니다. 그렇기에 파이썬 개발자를 생각하지 않는 사람들은 예를 들어 numpy, pandas 등으로 데이터 분석을 하거나 딥러닝 연구를 하는 사람들의 입장에서는 큰 도움이 안되었을 것으로 보입니다. 사실 파이썬 3년정도 사용했지만 몰라도 잘 사용했습니다. 그래도 파이썬으로 개발을 생각하는 사람들을 대상으로는 정말 좋은 책이라고 생각합니다. 여러번 정독해서 책에 나온 테크닉들을 나의 것으로 만들면 파이썬 입문을 넘어서 진정한 파이썬 개발자로 나아갈 수 있을 것 같습니다.