파이썬 클린 코드 - 유지보수가 쉬운 파이썬 코드를 만드는 비결
마리아노 아나야 지음, 김창수 옮김 / 터닝포인트 / 2019년 2월
평점 :
구판절판


클린 코드는 단순하게 체커(checker)를 사용해 문법을 체크하거나, 린터(Linter)를 사용해 취약한 부분을 찾아내거나, 정적 분석기를 실행하는 것이 아니다. 클린 코드는 코드의 가독성을 높여 작업자 간의 이해도를 높임에 따라 코드 품질을 높이고 유지보수의 향상성을 가져온다.

PEP는 Python Enhancement Proposal을 말한다. 거기서 PEP-8은 핵심 파이썬 개발자가 만들었는데 PEP-8에 따라 코딩을 작성하여 코드의 이해도를 높이고 일관성을 유지해 코드의 품질을 높일 수 있다. PEP-8을 모두 준수한다고 해도 클린 코드의 요건을 충족하는 것은 아니다. 기본적인 코드 지침이라고 볼 수 있다. 코딩 가이드라인은 품질과 표준을 지키기 위해 따라야 하는 최소한의 요구사항이다. 가이드에 따라 코드가 일관되게 구조화되어 있으면 가독성이 높아지고 이해하기 쉬워진다.

Docstring은 주석을 다는 것이 아니라 설명을 기술하는 것이다. 코드의 특징이나 모듈, 클래스, 함수에 대한 것을 설명한다. 이전에는 소스코드에 주석을 달았는데 최근에는 코드에 주석을 다는 것은 나쁜 습관으로 본다. 생각을 코드로 제대로 표한하지 못하였기에 주석을 달아서 보충하는 것이다. 소스 코드만으로 쉽게 읽혀지고 동작하는 로직을 바로 볼 수 있도록 코딩해야 한다.

코드 리뷰에 시간을 투자하고 보다 좋은 코드가 무엇인지, 어떻게 하면 읽기 쉽고 관리하기 쉬운 코드인지 고민해야 한다. Mypy, Pylint 등과 같은 코드에 대한 검사는 자동화하는 것이 중요하다.


댓글(0) 먼댓글(0) 좋아요(12)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
애프터스킬 파이썬 프로젝트 Active 개발 가이드 - 환경부터 프레임워크까지 100% 실무 기법서 애프터스킬 시리즈
최원우 지음 / icox(아이콕스) / 2019년 8월
평점 :
장바구니담기


180쪽 분량에 많은 페이지에 큼지막한 화면캡쳐 이미지가 있어서 두 시간 정도면 완독이 가능하다. 기본적인 개념과 예제 수준의 코드 위주라 입문자가 아니고선 일부터 타이핑할 필요도 없어 보인다. 저자 나름 정리와 비교 분석을 잘하였는데 두께와 내용의 깊이가 아쉽다.




파이썬 설치와 환경설정이 캡처 이미지 기반으로 9페이지 채우고 나서 다음에는 Git & GitHub 설치가 이어진다. 또다시 캡처이미지와 간단한 설명으로 10페이지가 넘어간다.




총 180페이지에서 이미 20% 이상이 지나갔는데 PyCharm 설치가 이어진다. 그렇게 52페이지까지는 설치가 마무리된다.



마지막에 부록에서 MariaDB 설치와 Database에 대해서 18페이지를 채운다. 이 책에 대한 생각은 내용의 절반 정도가 설치를 다루고 있는 거 같아서 개발가이드라기 보다는 "파이썬 개발환경 설정 및 예제 실행 가이드" 매뉴얼 같다.




파이썬 첫 입문자에게는 도움 되는 내용인지는 모르겠지만 여기까지의 내용은 인터넷에 많이 있고 한번 경험해본 사람에게는 그냥 넘어가는 페이지들이다. 이런 이야기를 적어서 저자에게는 미안하지만 한번 읽고 나면 다시 보게 되는 일이 없어 보인다.



파이썬은 읽기 쉽고, 이해하기 쉽고, 배우기 쉬운 특징을 갖는다


댓글(0) 먼댓글(0) 좋아요(10)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
Flask 기반의 파이썬 웹 프로그래밍 - 생산성을 보장하면서도 가벼운 웹 프레임워크, 플라스크!
이지호 지음 / 제이펍 / 2016년 5월
평점 :
절판


Flask 입문자를 위해 소스코드를 라인 단위로 상세히 설명해 준다. 국내서적인데 요소기술에 관해 단계별로 상세히 다루고 있다. 챕터마다 예제코드가 넘처난다. 그당시 Flask 관련된 내용을 모두 한 권에 담으려고 했나 보다. 반면 상세한 설명이 많다 보니 기술에 관한 중요도가 잘 들어나지 않고 모두 골고루 배분되어 있는 모양이다.


이 책을 통해 파이썬으로 언제나 손쉽게 웹 서버를 실행할 수 있다는 것을 알았는데 실무에서 상당히 유용하게 사용하고 있다.

> python -m http.server


Jinja 템플릿과 Validator와 관련해서는 상당히 상세하게 다루고 있다. 너무 디테일한 내용들이라 나중에 필요할 때 참고하기로 하고 가볍게 읽고 넘어갔다. 중후반 내용들도 나름 유용했지만 정독하지는 않았고 나중에 필요시 보는게 좋겠다. 


댓글(0) 먼댓글(0) 좋아요(9)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
DIY! 워드프레스 쇼핑몰 - 프리미엄 테마로 만드는 쇼핑몰/웹사이트 위키북스 오픈소스 & 웹 시리즈 57
김덕기 지음 / 위키북스 / 2014년 4월
평점 :
장바구니담기


기초부터 단계별로 학습하기에는 좋다.

댓글(0) 먼댓글(0) 좋아요(6)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
파이썬 Jupyter Notebook 실전 입문
이케우치 다카히로 외 지음, 원인재 옮김, 조인석 감수 / 터닝포인트 / 2018년 6월
평점 :
품절


Anaconda를 설치하고 Jupyter Notebook을 직접 실행하면서 학습하는 형태로 되어 있는 전형적인 IT 서적으로 순서를 갖추고 체계적으로 정리하는 일본인 저자의 특징을 갖고 있다. 모든 챕터가 실습 위주로 구성되어 있어서 실전 입문을 위한 학습서적으로 좋다.



유용한 단축키 (편집모드)

. Shift + Enter : 코드 셀을 실행하고 밑의 셀을 선택. 마지막이면 코드 셀을 추가.

. Ctrl + Enter : 코드 셀을 실행. (명령모드에서도 동일기능)

. Alt + Enter : 코드 셀을 실행하고 코드 셀을 추가.

. Tab : 자동완성

. Shift + Tab : 툴핍 표시

. Esc : 편집모드에서 명령모드로


유용한 단축키 (명령모드)

. A : 신규 셀을 위(Above)에 추가

. B : 신규 셀을 아래(Below)에 추가

. Shift + L : 줄 번호 토글

. D + D : 선택 중인 셀을 삭제

. 0 + 0 : 커널 리스타트

. H : 단축키 목록을 표시


매직 명령어

%pwd

%time

%ls

%history



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