본문 바로가기
그냥

입문서를 떼면 '고성능 파이썬'

by wizmusa 2021. 5. 25.

Python 입문서나 Python 머신러닝/딥러닝(Tensorflow, PyTorch 등) 입문서를 떼고, 소소한 과제가 아닌 경진대회나 실제 업무를 접하면 필연코 한계를 절감합니다. 성능, 속도 같은 한계에 부딪히기도 하지만, 이 코드가 돌아가는데 왜 돌아가는지 이 방법과 저 방법의 차이가 무엇인지 모르는 답답함도 정말 사람 속을 뒤집어 놓습니다.

 

고성능 파이썬(2판)

이런 때에 읽어 보길 권합니다. 이 책을 입문서를 떼기 전에 봤다면 그냥 미리 사 둬도 좋습니다. 어차피 겪을 문제라서 구글 검색부터 하느라 시간을 많이 보내기 보다는, 구글 검색을 하더라도 이 책으로 시작하면 필요한 결과를 더욱 빨리 찾을 겁니다.

 

고성능 파이썬(2판)

자료구조별 특성부터 멀티코어·클러스터의 활용과 다양한 실무 노하우 등 ‘더 빠르고 확장성 있는 파이썬 개발에 필요한 고급 기법’을 다룬 책

www.hanbit.co.kr

우리나라는 특히 많은 Java 개발자가 파이썬을 익힐 때에도 이 책은 쓸 만합니다. 파이썬이 어떤 특장점으로 인기가 있는지 설명하며 목차를 훑어 봐도 Java에서 했던 개발작업에 상응하는 부분이나 파이썬스럽게 할 수 있는 방법을 알려 줍니다. 저도 Python은 나중에 배웠는데 기본 함수보다 Numpy를 많이 쓰는 이유를 몰랐던 기간이 길었습니다. 물론 이 책을 보고 안 것은 아니지만(검색을 했죠.) 더 빨리 알았다면 쓸 데 없는 고집을 부리지 않고 더 효과적으로 개발할 수 있었겠다는 생각은 듭니다. Cython이나 다른 성능향상 방안도 소개가 잘 되어 있습니다. 용기내어 해볼 만하겠습니다.

 

더불어 비동기 I/O나 multiprocessing을 다룬 장도 고개가 끄덕여졌습니다. 팀원들이 실제로 개발할 때에 꼭 신경쓰거나 적용해야 했던 모듈입니다. 알고 입사했던 팀원도 있지만, 들어와서 열심히 익힌 팀원도 있었습니다. GPU와 docker를 다룬 장도 흥미로웠습니다. 분량이 많지는 않은데, 이 책을 통해 존재를 알았다면 필요한 주제를 검색해내기가 더 쉬워질 거라 봅니다. 이런 식으로 파이썬 요소 요소에서 성능을 높힐 팁이 빼곡합니다. 1판부터 더 일찍 만났으면 좋았겠습니다.

 

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

반응형