상세정보
미리보기
진지한 파이썬
- 저자
- 쥘리앵 당주 저/김영하 역
- 출판사
- 한빛미디어
- 출판일
- 2021-01-18
- 등록일
- 2021-04-22
- 파일포맷
- PDF
- 파일크기
- 3MB
- 공급사
- YES24
- 지원기기
-
PC
PHONE
TABLET
웹뷰어
프로그램 수동설치
뷰어프로그램 설치 안내
책소개
파이썬 고수가 되고 싶은 개발자를 위한 실전 프로그래밍 지침서 코드는 적게, 작동은 쉽게, 유지 보수는 편하게 파이썬 실력을 높이고 싶은 이를 위한 비법서로, 파이썬으로 15년 넘게 개발해온 저자가 파이썬의 기능과 능력을 제대로 활용해 프로그램을 체계적으로 구축하는 방법을 소개한다. 멀티스레딩, 효율적으로 반복을 처리하는 방법 등의 고급 주제를 다루며, 일반적으로 범하는 실수를 피하는 방법도 알려준다. 문서화, 버전 관리, 시간대 설정 방법, 패키징, 테스트, 배포, API, 데이터베이스 처리 등 개발에 필요한 필수 지식뿐 아니라 유명 파이썬 개발자들의 경험담까지 담았다. 이 책으로 유지 보수하기 쉽고 확장성이 뛰어난 파이썬 프로그램을 만드는 방법을 익히고, 진정한 고수로 거듭나길 바란다.
저자소개
20년 가까이 자유 소프트웨어 해커로 활동하며, 파이썬으로 소프트웨어를 개발했다. 250만 줄이 넘는 코드가 파이썬으로 작성된 거대 오픈소스 오픈스택(OpenStack)의 분산 클라우드 플랫폼을 위한 프로젝트의 팀 리더로 일했다. 클라우드 개발 일을 하기 전에 윈도우 관리자를 개발했으며, 데비안(Debian)과 GNU 이맥스(Emacs)와 같은 다양한 소프트웨어 프로젝트에 기여했다.
목차
CHAPTER 1 프로젝트 시작하기1.1 파이썬 버전1.2 프로젝트 잘 설계하기1.3 버전 번호 매기기1.4 코딩 스타일과 자동 검사1.5 인터뷰: 조슈아 할로와 파이썬에 대해CHAPTER 2 모듈, 라이브러리, 프레임워크2.1 임포트2.2 유용한 표준 라이브러리2.3 외부 라이브러리2.4 패키지 설치: pip로 더 많은 것 얻기2.5 프레임워크 사용 및 선택하기2.6 인터뷰: 파이썬 코어 개발자 더그 헬먼과 라이브러리에 대해CHAPTER 3 문서화와 모범 API 사례3.1 스핑크스로 문서화하기3.2 마치며3.3 인터뷰: 크리스토프 드 비엔과 API 개발에 대해CHAPTER 4 시간 정보와 시간대 다루기4.1 시간대가 없는 경우의 문제4.2 datetime 객체 생성하기4.3 dateutil로 시간대 정보가 있는 시간 정보 생성하기4.4 시간대 정보가 있는 datetime 객체 직렬화하기4.5 애매한 시간대 처리하기4.6 마치며CHAPTER 5 개발한 소프트웨어 배포하기5.1 간단하게 설명하는 setup.py의 역사5.2 setup.cfg를 이용한 패키징5.3 Wheel 형식의 배포 표준 5.4 작업물 공유하기5.5 진입점5.6 마치며5.7 인터뷰: 닉 코글런과 패키지에 대해CHAPTER 6 단위 테스트6.1 테스트 기본 사항6.2 가상 환경6.3 테스트 정책6.4 인터뷰: 로버트 콜린스와 테스트에 대해CHAPTER 7 메서드와 데커레이터7.1 데커레이터 사용 방법과 데커레이터의 사용 시기7.2 파이썬에서 메서드가 작동하는 방법7.3 정적 메서드7.4 클래스 메서드7.5 추상 메서드7.6 정적, 클래스, 추상 메서드 혼합하기7.7 마치며CHAPTER 8 함수형 프로그래밍8.1 순수 함수 만들기8.2 제너레이터8.3 리스트 컴프리헨션8.4 함수형, 함수, 함수화8.5 마치며CHAPTER 9 AST, Hy, 리스프 계열 속성9.1 AST 살펴보기9.2 AST 검사로 flake8 확장하기9.3 Hy 살펴보기9.4 마치며9.5 인터뷰: 폴 탈리아몬테와 AST, Hy에 대해CHAPTER 10 성능과 최적화10.1 자료구조10.2 프로파일링으로 내부 동작 이해하기10.3 효율적으로 함수 정의하기10.4 정렬된 리스트와 bisect10.5 네임드튜플과 슬롯10.6 메모이제이션10.7 더 빠른 파이썬 PyPy10.8 버퍼 프로토콜로 제로 복사하기10.9 마치며10.10 인터뷰: 빅터 스티너와 최적화에 대해CHAPTER 11 확장과 구조11.1 파이썬의 멀티스레딩과 한계11.2 멀티프로세싱과 멀티스레딩11.3 이벤트 반응형 아키텍처11.4 또 다른 방법 asyncio11.5 서비스 지향 아키텍처11.6 ZeroMQ로 프로세스 간 통신하기11.7 마치며CHAPTER 12 관계형 데이터베이스 관리12.1 RDBMS과 ORM의 사용 시기12.2 데이터베이스 백엔드12.3 플라스크 및 PostgreSQL을 사용한 데이터 스트리밍12.4 인터뷰: 디미트리 퐁텐과 데이터베이스에 대해CHAPTER 13 효율적으로 코딩하기13.1 파이썬 2와 3을 지원하는 six 사용하기13.2 파이썬으로 구현한 리스프를 사용하여 단일 디스패처 만들기13.3 콘텍스트 관리자13.4 attr로 상용구 사용하기13.5 마치며