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


이 책은 파이썬 초급과 중급수준의 개발자를 대상으로 한다고 합니다.  초급인 저도 이 책의 혜택을 받을 수있는 대상이 다행이 됩니다. 그래도 파이썬 초급책은 분명 떼었기때문입니다. 이 교재를 공부하기위해서는 Repl기반 IPython터미널이나 주피터 노트북을 권장합니다. 그리고 끊임없이 올바른 개발방법을 고민하게 합니다.  생각보다 혼란스런 순환구조부터 자주하는 오류부분을 수정해주고 보안과 수치계산까지 고급기술이 뭔지 알려줍니다. 



저자는 데이비드 메르츠 KDM Traing 설립자이자 운영자입니다. 콜로라도대 수학학사, 메사추세즈대 철학석사, 동대학원 박사입니다.  휴먼 테크놀라지파트너십 시니어 프로그래머, 오픈보팅 컨설팅, PSF 이사 등을 거치면서 경력을 쌓아오셨습니다.  파이썬 커뮤니티에서 활동하신 분입니다.  파이썬 코딩 교육전문가십니다. 




파이썬을 처음배울때 나오는 것이 순환이죠. for,while문을 돌리는 방법을 배웁니다. 그런데 중급으로 넘어가면 항목의 개수가 많아지면 메모리도 걱정을 해야 합니다.  그리고 사용하기 좋은 순환문으로 while문보다는 for문을 쓰라고 하고  순환중에는 구상 컬랙션을 변경하는 것은 아니라고 정리해줍니다.  동등성과 동일성의 문제도 쉬운 문제가 아니죠.  파이썬은 객체지향언어입니다. 이를 까먹으면 안되죠. 그래서 값, 메모리주소, 변수이름으로 전달되는 것이 아니라 항상 객체 그자체로 전달된다는 것이 중요하죠.  파이썬에서 동일성은 is로 동등성은 ==로 검사함은 무조건 지켜야 할겁니다. 




파이썬은 정해진 원칙대로 이름을 쓰는 것이 중요합니다. 내장이름이 존재하기에 예약어를 잘정리해야 합니다. 왜냐하면 예약어는 변수명이나 함수이름으로 사용할 수 없기 때문입니다. 예약어는 변경이 불가능하지만 내장이름은 재정의가 가능함도 알아야할겁니다  사용하면 고급으로 보이는 기술도 있습니다. 메타클래스, 원숭이패치, 정규표현식 등은 파이썬 사용에 있어서 고급으로 가능 길입니다. 자유스러운 파이썬이라고는 하지만 꼭 지키면서 쓰면 좀더 유용할 기능등이 있죠. 



좋은 개발자는 코딩보다 데이터의 구조를 잘짜야 한다고 합니다. 파이썬에서 데이터구조는 list, dict, tuple, set등이 내장되어 있죠. 그런데 이 내장 데이터구조에 하위 클라스가 존재한다는 거죠. dict의 하위 클라스는 collections가 있습니다. 이 책의 큰 장점이 자주 실수하는 것을 수정해주는 것입니다.  오랜 파이썬 교육을 통해서 교육생들이 어느 부분에서 자주 실수를 하는지 알기때문에 자신있게 소개하는 잘못과 해결책일겁니다.  수치계산을 다루는 라이브러리는 Numpy와 Pandas죠. 그런데 오류가 나오는 곳이 수동소수점이라고 합니다. NaN가 숫자임도 인식해야 하고  32비트와 64비트 부동소수점을 선택할시 도메인을 잘구별해야 합니다. 




개인적으로는 처음대하는 부분도 있고 아직 제 자신의 실력이 초보수준이라고 느낀점도 많았습니다. 물론 새롭게 고급파이썬을 배운다는 즐거움도 있었고  파이썬 전문가가 되려면 어디까지 신경을 써야 하는 것도 느낄 수있는 시간이었습니다. 다만 책자체는 쉽지 않네요. 파이썬 고급전문가 되는 길이 쉽게 열릴 것이란 생각은 안됩니다.어려움을 극복하고  반복노력만이 살길같습니다. 



본 도서는 출판사로부터 무상으로 제공받아 주관적인 리뷰를 했습니다. 


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo