-
-
(Better Python Code) 파이썬 코딩의 기술 51 - 똑똑하게 코딩하는 법
데이비드 메르츠 지음, 김진호 옮김 / 길벗 / 2024년 7월
평점 :

파이썬을 사용한 지 어느덧 2년이 돼간다
개발 공부를 시작할 때는 문서작업 밖에 못 했는데
이젠 아주 조금 파이썬을 다룰 줄 아는 수준이 됐다
파이썬을 다루면 다룰수록
내 실력이 정체돼있음을 느꼈다
내가 지금 실습하는 데이터 분석할 때 사용하는 파이썬은 코딩 기술이 그렇게 크게 필요하지 않기 때문이다
하지만 코딩 실력을 점프하기 위해선 파이썬 코딩 기술이 향상돼야 함을 알기에
이 책을 읽게 됐다
[파이썬 코딩의 기술 51]이다
저자 데이비드 메르츠는 25년간 개발자로 활동하면서
현업에서 파이썬 개발자들이 쉽게 빠지는 잘못, 함정, 오류들을 발견해 왔고 이 책은 그중 51
가지를 선별해 관련된 개념끼리 묶어서 총 9개 장으로 소개한다.
책의 목차는 다음과 같다
책은 제목 그대로 파이썬 코딩 기술을 향상시키는데 초점이 맞춰져 있다
이 책을 읽기 위해서는 일단 파이썬을 다룰 줄 알아야 한다
이 책은 실전서나 다름없기에
파이썬에 대해 전혀 모르는 상태라면 이 책보다는 파이썬 기본서를 먼저 읽고 오기를 추천한다
물론 기본서와 이 책을 함께 봐도 되지만
그러기엔 굉장히 시간이 걸릴 것이다
책은 일단 파이썬을 어느 정도라도 사용할 줄 안다는 전제하에 쓰였기 때문이다
큰 챕터 하나 안에
소주제들을 소개하고 있다
내가 의문을 가졌던 for 과 while 관련 내용도 들어있었다
1.5 while 순환보다 for 순환 사용하기
결론 : 가능하다면 for item in iterable을 사용하는 것이 좋다
이유 : 언어가 무한 반복자(iterator)를 가지고 있다면 for 문만 사용해도 충분
코드에서는 while True 순환의 표준적 예시에 해당하지만 실제로 while을 사용하지는 않는다
일반적 예시와 달리 많은 예외가 있지만 파이썬 순환 시 거의 컬렉션, 생성기 함수,
생성기 순환 표현식, 사용자 정의 반복 가능 클래스, 같은 반복 가능 객체 사이 순환하는 경우가 대부분인데 이외
의 경우 작업 데이터를 제공하는 코드를 반복 가능 객체로 리팩토링 해야한다
여기서 리팩토링(Refactoring)이란 코드의 동작을 그대로 유지하면서 더 깔끔하고 효율적으로 수정하는 것을
의미한다
while을 쓸 때마다 for 문을 대체할 수 있는지 자문해야 한다
다른 내용을 보자면
9.2.1 금융 계산에 부동 소수점 숫자를 사용하지 않기
굉장히 흥미로운 주제다
부동계소수점을 사용하지 않고 어떻게 소수점 숫자를 사용할까?
결론은 decimal 모듈을 사용하는 것이다
금융 계산에 (이진) 부동 소수점 숫자를 사용할 때 발생하는 오류 중 절반에 대한 해결책은
decimal 모듈을 사용하면 절반은 해결된다다고 한다
책은 이런 식으로 파이썬 기술을 향상시킬 수 있는 방법과 이유를 설명한다
이렇게 책만 보고는 어려울 수 있으나 실습 코드까지 모든 제공하기에
책으로 이론을 이해하고
책을 보고 실습 코드를 통해 실습할 수 있어서 공부하기 좋았다
그리고 각 장의 마지막엔 그 장을 전체적으로 정리하는 부분이 있어서
정리.를 읽으며 중요한 내용을 다시 생각할 수 있어서 좋았다
이 책은 파이썬을 어느 정도 사용할 줄 아는 모든 사람들이 읽기 좋은 책이다
파이썬 기본기만 알고 있으면
어느 정도 능력을 향상시키고 실수를 줄여야 할 때가 온다
이 책을 읽으면 현업 파이썬 개발자가 말하는 실수들을 줄일 수 있을 것이다
파이썬 코드를 깔끔하고 효율적으로 사용하고 싶다면
[파이썬 코딩의 기술 51] 책을 추천한다
본 서평은 길벗에서 서적만 제공받은 자유로운 형식의 서평입니다