책소개
Flask 입문자를 위해 라인 단위로 코드 설명!실무에 바로 적용하도록 실용적 코드로 구성!설치부터 개발, 서비스 운용 전반을 다룬 Flask 바이블!웹 프로그램은 어떤 언어로도 구현할 수 있지만, 파이썬만큼 생산성을 보장하는 언어는 많지 않다. 또한, 수많은 파이썬 커뮤니티로부터 웹 프로그램 개발에 필요한 거의 모든 도움을 받을 수 있을 것이다. 그러나 Flask는 가볍고 빠른 생산성을 갖고 있음에도 국내 자료가 많지 않았던 것이 사실이다. 이 책은 웹 프로그램의 개발 과정에서 꼭 알아야 하는 내용으로 가득 차 있다. Flask로 웹 프로그램을 구현하는 방법, 그리고 개발자가 프로그램을 손쉽게 배포하는 방법부터 프로그램이 진화하는 과정에 이르기까지 웹 프로그램 개발에 필요한 전반적인 지식을 모두 다루고 있다. 늘 가까운 곳에 두고 찾아본다면 개발에 필요한 꽤 많은 시간을 줄일 수 있을 것이다. 또한, 파이썬으로 웹 프로그램을 개발하는 일이 얼마나 쉽고 안정적인지를 확인할 수 있을 것이다.
목차
CHAPTER 1 웹 프로그램이란 무엇인가? 11.1 웹 프로그램의 통신 구조 21.2 파이썬을 위한 웹 프로그램 통신 규약 61.3 파이썬 웹 프로그래밍 맛보기 9CHAPTER 2 Flask 시작하기 172.1 Flask와 함께 떠나는 웹 여행 182.2 라우팅 362.3 요청과 응답 다루기 482.4 쿠키와 세션 다루기 75 2.4.1 SQLAlchemy에 기반한 사용자 정의 세션 인터페이스 81 2.4.2 SQLite에 기반한 사용자 정의 세션 인터페이스 88 2.4.3 pymongo에 기반한 사용자 정의 세션 인터페이스 94 2.4.4 Redis에 기반한 사용자 정의 세션 인터페이스 97 2.4.5 Beaker 라이브러리에 기반한 사용자 정의 세션 인터페이스 1012.5 에러와 로깅 1042.6 로컬 서버 실행하기 115CHAPTER 3 템플릿 다루기 1193.1 주석 1263.2 공백 다루기 1273.3 이스케이프 처리 1343.4 제어와 반복 처리(if, for) 1433.5 템플릿 상속 1513.6 재활용(macro, import, include) 1573.7 템플릿 필터 작성과 사용 168CHAPTER 4 Flask 기본 확장 1794.1 데이터베이스 연동 180 4.1.1 SQLAlchemy 180 4.1.2 MongoKit 1954.2 뷰 데코레이터 2094.3 폼 유효성 검사 2174.4 HTTP 오류 핸들링 2424.5 메시지 Flashing 2484.6 Ajax 처리 257CHAPTER 5 Flask 고급 확장 2635.1 모듈별 협업하기(Blueprint) 2645.2 파일 업로드 다루기 2755.3 캐싱 2945.4 HTTP 메서드 덮어쓰기 299CHAPTER 6 Flask 애플리케이션 테스트 3056.1 테스팅 스켈레톤 작성 3076.2 테스트 케이스 구성 3106.3 어설션 메서드 사용 3186.4 리소스와 컨텍스트 흉내내기 3276.5 세션 접근과 수정 330CHAPTER 7 웹 애플리케이션 배포 3337.1 웹 서버와의 연동 334 7.1.1 apache2에서의 연동(mod_python, mod_wsgi) 335 7.1.2 nginx와 uwsgi 연동 3417.2 WSGI 컨테이너 이용하기(Tornado, Gunicorn) 3467.3 통합 테스트를 위한 테스트 스위트 구성 350CHAPTER 8 지속 가능한 개발 환경 구성 3598.1 버전 관리 시스템 선택 3618.2 원격 저장소 사용하기 364 8.2.1 GitHub 366 8.2.2 BitBucket 3828.3 GitLab을 사용한 프로젝트 관리 3958.4 Jenkins를 사용한 회귀 테스트 구성 409CHAPTER 9 Google App Engine에 Flask 애플리케이션 배포하기 4199.1 GAE 환경 구성 및 마이그레이션 4219.2 데이터베이스 환경 구성 4359.3 GAE 로컬 확인 및 업로드하기 455CHAPTER 10 Apache Solr 연동 45910.1 Apache Solr 설치 46010.2 Solr 코어 구성 46410.3 Solr 데이터 인덱싱 46610.4 pysolr로 Solr 사용하기 473CHAPTER 11 Celery 기반 백그라운드 작업 구성 48111.1 Celery 설치 48411.2 Flask에 Celery 설정 구성 48511.3 Celery Task 생성과 실행 49011.4 Celery Task 실행 결과와 활용 49911.5 마치며 507APPENDIX A Python 설치 509A.1 윈도우에서의 설치 509A.2 리눅스에서의 설치 514A.3 맥 OS X에서의 설치 516APPENDIX B 파이썬 통합 개발 환경 구성 521APPENDIX C 가상 환경 구성 523APPENDIX D Flask 설치 526APPENDIX E PostgreSQL 9.4 설치 527APPENDIX F GitLab 설치 530APPENDIX G 윈도우에서 SSH 접속 환경 구성 535찾아보기 542