지은이·옮긴이 소개 xi
기술 감수자 소개 xii
옮긴이 머리말 xiii
베타리더 후기 xv
감사의 글 xvii
이 책에 대하여 xviii
CHAPTER 1 파이썬의 현재 1
1.1 파이썬의 현재와 진행 상황 2
1.2 파이썬 2의 현재와 미래 3
1.3 최신 정보의 확인과 습득 5
__1.3.1 PEP 문서 6
__1.3.2 활성화된 커뮤니티 8
__1.3.3 기타 자료들 10
1.4 요약 12
CHAPTER 2 모던 파이썬 개발 환경 13
2.1 기술적 요구 사항 14
2.2 파이썬 패키징 생태계 15
__2.2.1 pip를 이용한 파이썬 패키지 설치하기 15
2.3 런타임 환경 격리 17
__2.3.1 애플리케이션 레벨 격리 vs. 시스템 레벨 격리 20
2.4 애플리케이션 레벨 환경 격리 22
__2.4.1 포어트리: 디펜던시 관리 시스템 24
2.5 시스템 레벨 환경 격리 29
__2.5.1 컨테이너화 vs. 가상화 31
__2.5.2 도커를 이용한 가상 환경 33
__2.5.3 베이그런트를 이용한 가상 개발 환경 52
2.6 유명한 생산성 도구들 54
__2.6.1 커스텀 파이썬 셸 55
__2.6.2 IPython 이용하기 56
__2.6.3 커스텀 스크립트 및 프로그램과 셸 연동하기 59
__2.6.4 인터랙티브 디버거 60
__2.6.5 기타 생산성 향상 도구 62
2.7 요약 64
CHAPTER 3 파이썬의 새로운 기능 65
3.1 기술 요구 사항 66
3.2 최근의 언어 추가 사항 66
__3.2.1 딕셔너리 병합 및 업데이트 연산자 67
__3.2.2 할당 표현식 72
__3.2.3 타입 힌팅 제네릭 76
__3.2.4 위치 전달만 가능한 매개변수 78
__3.2.5 zoneinfo 모듈 81
__3.2.6 graphlib 모듈 82
3.3 그다지 새롭지는 않지만 여전히 멋진 요소들 86
__3.3.1 breakpoint( 함수 86
__3.3.2 개
베테랑에게 배우는 파이써닉한 애플리케이션 구축, 유지보수, 패키징 기법
파이썬 코드를 작성하기는 쉽지만, 유지보수하기 좋은 환경을 갖추고 가독성 높은 코드를 만들기는 쉽지 않다. 이 책은 수년간 다양한 파이썬 애플리케이션을 구현한 전문 경험을 담아, 프로덕션 레벨에서 파이썬을 파이썬답게 쓰기 위해 알아야 할 모든 것을 망라한 지침서다. 전문 파이썬 프로그래머라면 꼭 알아야 할 애플리케이션 구축, 유지보수, 패키징, 배포 방법을 자세히 살펴보고, 베스트 프랙티스, 유용한 도구, 표준을 배울 수 있다.
1~4장에서는 파이썬 프로그래머들이 이용하는 도구의 기본적인 요소들에 초점을 맞춘다. 생산성 도구, 현대적인 환경, 최신 파이썬 릴리스에서 도입된 새로운 구문 요소들을 살펴본다. 서로 다른 디펜던시들로 구성된 복잡한 환경을 세팅하는 우아한 방법부터 딕셔너리 병합, zoneinfo, 구조적 패턴 매칭 등 최신 파이썬 피처까지, 특히 다른 언어에서 파이썬으로 전향하는 개발자가 모던 파이썬 개발의 세계에 안착하는 데 도움을 준다.
5~9장에서는 디자인 패턴, 프로그래밍 패러다임, 메타프로그래밍 기법에 관해 살펴본다. 작은 규모의 예제 프로그램을 구현해보고 애플리케이션 아키텍처에 대해서도 깊이 다룬다. 인터페이스, 동시성, 이벤트 주도 프로그래밍/아키텍처 등 현대 애플리케이션 구축에서 반드시 고려해야 하는 요소를 파이써닉하게 구현하는 방법을 배운다. 파이썬의 태생적 성능 한계를 극복하기 위해 C/C++ 코드를 파이썬에 통합하는 방법도 살펴본다.
10~13장에서는 애플리케이션을 구축한 이후 쉽게 유지보수하는 데 도움이 되는 도구와 기법들을 살펴본다. 테스팅, 패키징 및 배포, 로깅 및 모니터링, 코드 최적화 등 개발 수명주기의 마지막 단계에 대해서도 다른 곳에서는 찾아보기 어려운 인사이트를 얻을 수 있다.
베테랑 개발자가 엄선한 베스트 프랙티스, 유용한 도구, 표준을 익힘으로써 파이썬 전문가에 한 걸음 더 가까워질 수 있다. 모던 파이썬 개발의 가