표지의 비단뱀이 귀엽게 생겼다^^

2021년 기준 파이선은 가장 인기 있는 입문자용 프로그래밍 언어라고 할 수 있다. 간결한 문법 체계와 풍부한 표준 내장 라이브러리, 그리고 커뮤니티는 프로그래밍에 익숙하지 않은 사람이라도 빠르게 애플리케이션이나 서비스를 구현할 수 있을 정도이다.

특히 TensorFlow를 위시한 Deep Learning의 인기와 취업 준비생의 코딩 테스트에서의 파이선 선택자의 좋은 성적이 여러 파이선 입문서, Deep Learning, 그리고 코딩 테스트를 다루는 서적의 출간에 많은 영향을 줬다고 생각한다.

이 책은 위와 같은 인기와는 조금 다르게 어떻게 파이선 기반의 'Product'를 더 잘 만들 수 있을지에 대해서 다루고 있는 책이라고 생각한다. 이러한 유형의 도서 중 하나는 Effective Python인데 해당 도서와 차이점이 있다면, 진지한 파이선의 경우 코드 효율성에 대한 내용만 다루는 것이 아니라 소프트웨어의 생애주기와 관련된 내용도 비중 있게 다루고 있다는 점이다. 단순히 동작하는 프로그램을 만드는 것이 아니라 아래와 같이 좋은 소프트웨어를 만들기 위한 여러 가지 주제를 비중 있게 설명하고 있다.

  • 스핑크스를 활용한 효율적인 문서화
  • 단위 테스트 및 테스트 자동화
  • flask8 과 같은 정적 도구, 그리고 배포

어느 정도 규모가 있는 파이선 서비스를 개발한다면 반드시 고려해야 할 점을 시원하게 긁어주는 내용이 포함되어 있기 때문에 기존에 파이선이 아니라 자바나 다른 기술 스택의 경력자들도 빠르게 학습할 수 있는 장점이 있다.

소프트웨어 생애 주기 외에도 중고급 파이선 사용자들이 궁금해할 부분인 시간 정보, 데커레이터, 그리고 멀티 프로세싱 등 특정 주제를 간결하게 설명하고 있다. 다만, 책에서도 언급했듯이 각 장 하나하나가 하나의 책으로 설명해야 할 정도로 방대한 내용이므로 더 관심이 있는 독자는 진지한 파이선으로 시작해 다른 도서를 더 살펴보는 것을 추천한다.

개인적으로 JVM 기반의 서비스를 많이 개발하다가 최근에 파이선 기반의 서비스 개발에도 참여하고 있는데, 책의 내용 중 일부는 알고 있었고 일부는 몰랐기 때문에 많은 도움이 되었다. 책이 그렇게 두껍지 않고 번역도 매끄럽게 되어있기 때문에 파이선으로 갓 입문한 개발자들에게 더 미려한 소프트웨어 개발을 하는 데 많은 도움을 줄 것으로 보인다.

위 서평은 한빛미디어 나는 리뷰어다 활동으로 제공받은 도서를 기반으로 작성되었습니다