본문 바로가기

추천 검색어

실시간 인기 검색어

파이썬 플라스크 웹 앱 개발 입문

에이케이커뮤니케이션즈

2023년 03월 31일 출간

종이책 : 2023년 02월 10일 출간

(개의 리뷰)
( 0% 의 구매자)
eBook 상품 정보
파일 정보 pdf (15.21MB)
ISBN 9791127459376
듣기(TTS) 가능
TTS 란?
텍스트를 음성으로 읽어주는 기술입니다.
  • 전자책의 편집 상태에 따라 본문의 흐름과 다르게 텍스트를​ 읽을 수 있습니다.
  • 전자책 화면에 표기된 주석 등을 모두 읽어 줍니다.
  • 이미지 형태로 제작된 전자책 (예 : ZIP 파일)은 TTS 기능을 지원하지 않습니다.
  • '교보 ebook' 앱을 최신 버전으로 설치해야 이용 가능합니다. (Android v3.0.26, iOS v3.0.09,PC v1.2 버전 이상)
소득공제
소장
정가 : 30,400원

쿠폰적용가 27,360

10% 할인 | 5%P 적립

이 상품은 배송되지 않는 디지털 상품이며,
교보eBook앱이나 웹뷰어에서 바로 이용가능합니다.

카드&결제 혜택

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 416P
  • 리뷰 작성 시, e교환권 추가 최대 300원

작품소개

이 상품이 속한 분야

이런 분께 추천!
-파이썬으로 간단히 웹 앱 개발을 시작하고 싶다.
-직접 웹 앱이나 웹 API를 만들고 싶다.
-인공지능에 관심이 있다.
-파이썬을 데이터 분석 용도로만 사용해왔다.
Part0 파이썬 플라스크 소개

Chapter00 플라스크의 개요와 환경 구축
0.1 간단하게 쓰고 다양하게 만드는 플라스크
0.2 왜 플라스크를 사용할까?
0.3 파이썬 웹 프레임워크 비교
장고
보틀
FastAPI
0.4 플라스크 환경 구축하기
파이썬 설치하기
로컬 환경에 가상 환경 만들기
플라스크 설치하기
플라스크 명령어
Visual Studio Code 설치하기
코드 체커·포매터 이용하기
VSCode에 파이썬 가상 환경 설정하기
.gitignore

Part1 플라스크 첫걸음

Chapter01 최소한의 기능 앱 만들기
1.1 MVT(Model, View, Template) 모델
1.2 최소한의 기능 앱 만들기
작업 디렉터리 만들기
애플리케이션 실행하기
디버그 모드란?
.env를 사용해 환경 변수 설정하기
애플리케이션 루트
라우팅 이용하기
템플릿 엔진 이용하기
url_for 함수를 사용해서 URL 생성하기
정적 파일 이용하기
애플리케이션 컨텍스트와 요청 컨텍스트
1.3 문의 폼 만들기
문의 폼의 사양
PRG 패턴
Flash 메시지
로깅
이메일 보내기
1.4 쿠키
1.5 세션
1.6 응답

Chapter02 데이터베이스를 이용한 앱 만들기
1.1 디렉터리 구성
2.2 앱 실행하기: Blueprint의 이용
① CRUD 앱의 모듈 작성하기
② 환경 변수 FLASK_APP의 경로 변경하기
③ 엔드포인트 만들기
④ 템플릿 만들기
⑤ 정적 파일 작성하기
⑥ 템플릿에 CSS 읽어 들이기
⑦ 동작 확인하기
2.3 SQLAlchemy 설정하기
확장 기능 설치하기
flask-sqlalchemy와 flask-migrate 이용 준비하기
2.4 데이터베이스 조작하기
모델 정의하기
데이터베이스 초기화와 마이그레이션
SQLAlchemy를 사용한 기본적인 데이터 조작
2.5 데이터베이스를 사용한 CRUD 앱 만들기
폼의 확장 기능 이용하기
사용자를 신규 작성하기
사용자 일람 표시하기
사용자 편집하기
사용자 삭제하기
2.6 템플릿의 공통화와 상속
공통 템플릿 생성하기
사용자 신규 작성 화면과 사용자 편집 화면의 다시 작성하기
2.7 config 설정하기
from_object를 사용하는 방법
config를 읽어 들이는 다른 방법

Chapter03 사용자 인증 기능 만들기
3.1 작성할 사용자 인증 기능과 디렉터리 구성
3.2 앱에 인증 기능 등록하기
Blueprint에서 사용자 인증 기능 등록하기
사용자 인증 기능 엔드포인트 만들기
인증 기능의 확인용 템플릿 만들기
인증 페이지 표시 확인 화면 만들기
동작 확인하기
3.3 회원가입 기능 만들기
flask-login과 연계하기
회원가입 기능의 폼 클래스 만들기
User 모델 갱신하기
회원가입 기능의 엔드포인트 만들기
회원가입 기능의 템플릿 만들기
crud 앱을 로그인 필수로 변경하기
동작 확인하기
3.4 로그인 기능 만들기
로그인 기능의 폼 클래스 작성하기
로그인 기능의 엔드포인트 만들기
로그인 기능의 템플릿 만들기
동작 확인하기
3.5 로그아웃 기능 만들기
동작 확인하기
로그인 상태 표시하기

Part2 플라스크 실천 ① 물체 감지 앱 개발하기

Chapter04 앱의 사양과 준비
4.1 물체 감지 앱의 사양
이미지 일람 화면0
인증 화면
이미지 업로드 화면
물체 감지 화면
이미지 검색 화면
커스텀 오류 화면
4.2 디렉터리 구성
4.3 물체 감지 앱 등록하기
이미지 일람 화면의 엔드포인트 만들기
이미지 일람 화면의 템플릿 만들기
동작 확인하기

Chapter05 이미지 일람 화면 만들기
5.1 UserImage 모델 작성하기
5.2 이미지 일람 화면의 엔드포인트 만들기
5.3 이미지 일람 화면의 템플릿 만들기
5.4 SQLAlchemy의 테이블 결합과 릴레이션십
SQL로 테이블을 JOIN한다
SQL을 확인하기 위한 사전 준비
릴레이션십

Chapter06 회원가입과 로그인 화면 만들기
6.1 회원가입 화면의 엔드포인트 갱신하기
6.2 공통 헤더 작성하기
6.3 회원가입 화면의 템플릿 갱신하기
6.4 로그인 화면의 엔드포인트 갱신하기
6.5 로그인 화면의 템플릿 갱신하기
6.6 회원가입/로그인 화면의 동작 확인하기

Chapter07 이미지 업로드 화면 만들기
7.1 이미지 업로드 경로 지정하기
7.2 이미지를 표시하는 엔드포인트 만들기
7.3 이미지 일람 화면에 이미지 업로드 화면 링크와 이미지 일람 추가하기
7.4 이미지 업로드 화면의 폼 클래스 만들기
7.5 이미지 업로드 화면의 엔드포인트 만들기
7.6 이미지 업로드 화면의 템플릿 만들기
7.7 이미지 업로드 화면의 동작 확인하기

Chapter08 물체 감지 기능 구현하기
8.1 UserImageTags 모델 작성하기
8.2 물체 감지 기능의 폼 클래스 만들기
8.3 물체 감지 기능의 라이브러리 설정하기
8.4 물체 감지 기능의 엔드포인트 만들기
8.5 이미지 일람 화면에 태그 정보 표시하기
8.6 이미지 일람 화면에 감지 버튼과 태그 정보 표시하기
8.7 물체 감지 기능의 동작 확인하기
8.8 이미지 삭제 기능 만들기
이미지 삭제 기능의 폼 클래스 작성하기
이미지 삭제 기능의 엔드포인트 만들기
이미지 일람 화면의 엔드포인트에 삭제 폼 추가하기
이미지 일람 화면에 [삭제] 버튼 표시하기
이미지 삭제 기능의 동작 확인하기

Chapter09 검색 기능 구현하기
9.1 이미지 검색 기능의 엔드포인트 만들기
9.2 이미지 검색 기능의 템플릿 만들기
9.3 이미지 검색 기능의 동작 확인하기

Chapter10 커스텀 오류 화면 만들기
10.1 커스텀 오류 화면의 엔드포인트 만들기
10.2 커스텀 오류 화면의 템플릿 만들기
10.3 커스텀 오류 화면의 표시 확인하기

Chapter11 유닛 테스트 진행하기
11.1 pytest 사용하기
pytest 설치하기
디렉터리 구성과 명명 규칙
테스트를 실행하기
실패하는 테스트의 동작 확인하기
테스트를 1개만 실행하기
11.2 pytest의 픽스처
conftest.py를 사용하여 픽스처 공유하기
11.3 물체 감지 앱의 테스트 진행하기
테스트용 이미지 업로드 디렉터리 설정하기
테스트 픽스처 갱신하기
이미지 일람 화면 테스트하기
이미지 업로드 화면 테스트하기
물체 감지와 태그에 의한 검색 기능 테스트하기
이미지 삭제 기능 테스트하기
커스텀 오류 화면 테스트하기
테스트의 커버리지 출력하기
테스트의 커버리지를 HTML로 출력하기

Part3 플라스크 실천② 물체 감지 기능 API 만들고 배포하기

Chapter12 Web API의 개요
12.1 World Wide Web(WWW)과 API의 의미
클라이언트와 서버
API와 JSON
12.2 리소스의 장소를 나타내는 URI의 역할
URL
URI
URN
12.3 HTTP 메서드를 이용해 리소스의 CRUD 조작하기

Chapter13 물체 감지 API의 사양
13.1 물체 감지 API의 처리 흐름
13.2 PyTorch 설치하고 학습 완료 모델 저장하기
PyTorch 설치하기
학습 완료 모델 저장하기

Chapter14 물체 감지 API 구현하기
14.1 물체 감지 API의 디렉터리 구성과 모듈
__init__.py
14.2 구현 준비하기
14.3 [구현 1] API 실행 코드 구현하기
config를 읽어 들이고 플라스크 앱 만들기
공통의 설정 관리하기
동작 확인하기
14.4 [구현 2] 데이터 준비하고 전처리/후처리 코드 구현하기
데이터 준비하기
전처리
후처리
14.5 [구현 3] 학습 완료 모델의 실행 코드 구현하기
14.6 [구현 4] 라우팅 구현하기
동작 확인하기

Chapter15 물체 감지 앱 배포하기
15.1 Docker의 개요
가상화 기술
15.2 Cloud Run의 개요
특징
15.3 Docker의 이용 준비
Docker Desktop 설치하기
Docker Desktop 구동하기
15.4 Cloud Run의 이용 준비
① Google Cloud 무료 계정 만들기
② Google Cloud 프로젝트 작성하기
③ Cloud Run API와 Container Regsitry API 활성화하기
④ Cloud SDK 설치하기
15.5 [절차 1] Google Cloud의 configuration 초기 설정하기
15.6 [절차 2] Dockerfile 작성하기
15.7 [절차 3] Docker 이미지 빌드하기
작성한 이미지 확인하기
15.8 [절차 4] Docker 이미지를 GCR에 푸시하기
푸시 확인하기
15.9 [절차 5] Cloud Run에 배포하기

Part4 머신러닝 API 개발하기

Chapter16 머신러닝의 개요
16.1 머신러닝에 관련된 개념
16.2 머신러닝에서 다루는 데이터
16.3 머신러닝이 다루는 문제
통계
머신러닝
16.4 수식과 코드로 알고리즘 표현하기
16.5 머신러닝에서 이용하는 파이썬 라이브러리
라이브러리와 프레임워크
16.6 파이썬 라이브러리로 로지스틱 회귀 표현하기
로지스틱 회귀
시그모이드 함수의 수식
교차 엔트로피 오차의 수식
경사하강법의 수식
NumPy를 사용한 로지스틱 회귀
scikit-learn을 사용한 로지스틱 회귀

Chapter17 머신러닝 API의 개발 과정과 실천
17.1 최적의 머신러닝 알고리즘/모델 선정하기
17.2 머신러닝 알고리즘/모델 구현하기
구현 과정
17.3 머신러닝 API의 사양
17.4 개발 준비하기
라이브러리의 설치
디렉터리 확인하기
17.5 [구현 과정 1] 분석 코드를 프로덕션 코드로 만들기
1.1 코드 리딩/코드 문서화
1.2 함수 분할/모듈 분할
1.3 리팩터링
17.6 [구현 과정 2] 프로덕션 코드를 API로 만들기
2.1 라우팅: URI(엔드포인트) 명명 규칙의 책정
2.2 오류 확인: 오류 코드와 오류 메시지의 정의
2.3 요청 확인: 검증 코드의 구현
17.7 정상 동작 확인하기
17.8 [과제] 머신러닝 API로부터 머신러닝 기반과 MLOps로

Index

나에게 필요한 기능만 사용해 최대한 가볍고 자유롭게, 내가 만들고 싶은 웹 앱을 만들고 싶다면?
파이썬 개발자들에게 가장 인기있는 웹 프레임워크
플라스크를 활용하자!

플라스크(Flask)는 웹 서비스 개발을 위한 파이썬 웹 마이크로 프레임워크이다. 웹 개발에 필요한 모든 기능을 갖춘 풀스택 프레임워크와 달리, 마이크로 프레임워크는 필요 기능만 갖춰 비교적 가볍고 단순한 프레임워크를 말한다. 플라스크는 2018년 파이썬 개발자 조사에서 가장 인기 있는 웹 프레임워크로 선정되어 지금까지도 인기가 많다.
플라스크는 다른 웹 프레임워크에 비해 자체 사양에 얽매이지 않고 앱을 개발할 수 있다는 장점이 있다. 또한 프레임워크 안에 미리 구현해 놓은 기능이 많지 않아서 스스로 생각하며 자유롭게 기능을 구현하거나 앱 개발을 배우기에 적합하다.

간단한 앱 만들기부터 머신러닝을 앱에 적용하는 방법까지, 기초부터 실무 적용을 한 번에 일거양득!

이 책은 플라스크를 이용해 웹 앱을 스스로 만드는데에 목적이 있다. 우선 간단한 앱부터 만들어 보고, 문의 폼과 데이터베이스를 이용한 앱, 인증 기능 등을 단계적으로 구현하면서 앱 개발 기초를 배운다. 이어서 이미지 데이터에서 물체를 판별하는 물체 감지 앱을 만들고 이 앱을 Web API로 만드는 방법까지 설명한다.
실무에서는 플라스크를 데모용 제품 개발 같은 소규모 프로젝트에 알맞은 프레임워크로 많이 활용되고, 머신러닝 같은 데이터를 활용한 제품개발에도 많이 이용한다. 머신러닝의 구현 코드를 제품에 넣거나 Web API로 범용화하여 서비스를 제공하기도 한다.
아직은 데이터를 활용한 제품 개발의 역사가 짧고 머신러닝을 제품에 적용한 사례가 많지 않은 것을 고려해, 이 책에서는 알기 쉬운 손글씨 문자 인식 분석 코드를 다루어 어떻게 머신러닝을 앱에 적용할지에 대해서도 자세히 설명한다.

작가정보

Techtouch 주식회사 소속. SIer를 거쳐 Allied Architects에서 웹 광고ㆍSNS 마케팅 관련 웹 서비스를 개발했고, 엔지니어팀 리더로 다수의 웹 서비 스 구성에 종사하고 있다. 부동산 테크 기업인 CTO를 거쳐 Techtouch 에 입사. 현재는 백엔드를 중심으로 개발을 진행중이다. 공저로 「React, Angular, Vue.js, React Native를 사용해 배워보는 첫 프론트 엔드 개발 (React,Angular,Vue.js,React Nativeを使って?ぶ はじめてのフロントエンド開?)」(기 술평론사, 2018)이 있다.

Classi 주식회사 소속. E-learning 사업회사에서 대형 자격학교의 LMS 운 용보수와 개발을 담당했다. 이후 학습 분석 기술(LearningAnalytics) 연구 를 위해 유니버시티 컬리지 런던(University College London)의 Institute of Education (IOE) Knowledge Lab 대학원에서 유학을 했다. 귀국 후 현재 의 회사에서 주로 파이썬 플라스크, 구글 클라우드(Google Cloud Platform: GCP)를 이용해 AI/ML 개발부터 인프라 구축, MLOps까지 진행하고 있다. Python Conference Taiwan, Python Conference US 등 해외 컨퍼런스에 도 등단한 경험이 있다.

(주)아이티에스 대표이사·데이터 사이언티스트. 데이터 과학자로서 빅데 이터 분석 및 AI 모델링 사업을 하고 있다. 주요 저서로는 『초보자를 위한 C 언어 300제』, 『예제가 가득한 C 언어 길라잡이』, 『윈도우 프로그래밍 플 러스』가 있고, 역서로는 『구글 코랩으로 배우는 인공지능 기술』, 『엑셀Ⅹ 파이썬 코드 레시 피 125』, 『데이터 분석을 위한 머신러닝 입문』, 『유니티 게임 프로그래밍 바이블』, 『게임으로 배우는 파이썬』, 『유니티를 이용한 VR 앱 개발』, 『그림으로 배우는 파이썬』, 『그림으로 배우는 C#』, 『그림으로 배우는 SQL』, 『모두의 알고리즘』 등 30여 권의 번역서가 있다.

현재 일본 전문 번역가로 활동하고 있으며, 역서로는 『구글 코랩으로 배 우는 인공지능 기술』, 『엑셀Ⅹ파이썬 코드 레시피 125』, 『모두의 알고리 즘』, 『데이터 분석을 위한 머신러닝 입문』, 『유니티 게임 프로그래밍 바이 블』, 『게임으로 배우는 파이썬』, 『유니티를 몰라도 만들 수 있는 유니티 2D 게임 제작』, 『유니티 교과서』, 『그림으로 배우는 파이썬』, 『그림으로 배우는 C#』, 『그림으로 배우는 SQL』 등30여 권의 번역서가 있다.

이 상품의 총서

Klover리뷰 (0)

Klover리뷰 안내
Klover(Kyobo-lover)는 교보를 애용해 주시는 고객님들이 남겨주신 평점과 감상을 바탕으로, 다양한 정보를 전달하는 교보문고의 리뷰 서비스입니다.
1. 리워드 안내
구매 후 90일 이내에 평점 작성 시 e교환권 100원을 적립해 드립니다.
  • - e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • - 리워드는 1,000원 이상 eBook, 오디오북, 동영상에 한해 다운로드 완료 후 리뷰 작성 시 익일 제공됩니다.
  • - 리워드는 한 상품에 최초 1회만 제공됩니다.
  • - sam 이용권 구매 상품 / 선물받은 eBook은 리워드 대상에서 제외됩니다.
2. 운영 원칙 안내
Klover리뷰를 통한 리뷰를 작성해 주셔서 감사합니다. 자유로운 의사 표현의 공간인 만큼 타인에 대한 배려를 부탁합니다. 일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
  • 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
  • 도서와 무관한 내용의 리뷰
  • 인신공격이나 욕설, 비속어, 혐오 발언이 개재된 리뷰
  • 의성어나 의태어 등 내용의 의미가 없는 리뷰

구매 후 리뷰 작성 시, e교환권 100원 적립

문장수집

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여 주는 교보문고의 새로운 서비스 입니다. 교보eBook 앱에서 도서 열람 후 문장 하이라이트 하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 ‘좋아요’ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보없이 삭제될 수 있습니다.
리워드 안내
  • 구매 후 90일 이내에 문장 수집 등록 시 e교환권 100원을 적립해 드립니다.
  • e교환권은 적립일로부터 180일 동안 사용 가능합니다.
  • 리워드는 1,000원 이상 eBook에 한해 다운로드 완료 후 문장수집 등록 시 제공됩니다.
  • 리워드는 한 상품에 최초 1회만 제공됩니다.
  • sam 이용권 구매 상품/오디오북·동영상 상품/주문취소/환불 시 리워드 대상에서 제외됩니다.

구매 후 문장수집 작성 시, e교환권 100원 적립

    교보eBook 첫 방문을 환영 합니다!

    신규가입 혜택 지급이 완료 되었습니다.

    바로 사용 가능한 교보e캐시 1,000원 (유효기간 7일)
    지금 바로 교보eBook의 다양한 콘텐츠를 이용해 보세요!

    교보e캐시 1,000원
    TOP
    신간 알림 안내
    파이썬 플라스크 웹 앱 개발 입문 웹툰 신간 알림이 신청되었습니다.
    신간 알림 안내
    파이썬 플라스크 웹 앱 개발 입문 웹툰 신간 알림이 취소되었습니다.
    리뷰작성
    • 구매 후 90일 이내 작성 시, e교환권 100원 (최초1회)
    • 리워드 제외 상품 : 마이 > 라이브러리 > Klover리뷰 > 리워드 안내 참고
    감성 태그

    가장 와 닿는 하나의 키워드를 선택해주세요.

    사진 첨부(선택) 0 / 5

    총 5MB 이하로 jpg,jpeg,png 파일만 업로드 가능합니다.

    신고/차단

    신고 사유를 선택해주세요.
    신고 내용은 이용약관 및 정책에 의해 처리됩니다.

    허위 신고일 경우, 신고자의 서비스 활동이 제한될 수
    있으니 유의하시어 신중하게 신고해주세요.


    이 글을 작성한 작성자의 모든 글은 블라인드 처리 됩니다.

    문장수집 작성

    구매 후 90일 이내 작성 시, e교환권 100원 적립

    eBook 문장수집은 웹에서 직접 타이핑 가능하나, 모바일 앱에서 도서를 열람하여 문장을 드래그하시면 직접 타이핑 하실 필요 없이 보다 편하게 남길 수 있습니다.

    P.
    파이썬 플라스크 웹 앱 개발 입문
    저자 모두보기
    낭독자 모두보기
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 이용권입니다.
    차감하실 sam이용권을 선택하세요.
    sam 이용권 선택
    님이 보유하신 프리미엄 이용권입니다.
    선물하실 sam이용권을 선택하세요.
    결제완료
    e캐시 원 결제 계속 하시겠습니까?
    교보 e캐시 간편 결제
    sam 열람권 선물하기
    • 보유 권수 / 선물할 권수
      0권 / 1
    • 받는사람 이름
      받는사람 휴대전화
    • 구매한 이용권의 대한 잔여권수를 선물할 수 있습니다.
    • 열람권은 1인당 1권씩 선물 가능합니다.
    • 선물한 열람권이 ‘미등록’ 상태일 경우에만 ‘열람권 선물내역’화면에서 선물취소 가능합니다.
    • 선물한 열람권의 등록유효기간은 14일 입니다.
      (상대방이 기한내에 등록하지 않을 경우 소멸됩니다.)
    • 무제한 이용권일 경우 열람권 선물이 불가합니다.
    이 상품의 총서 전체보기
    네이버 책을 통해서 교보eBook 첫 구매 시
    교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 네이버 책을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)
    구글북액션을 통해서 교보eBook
    첫 구매 시 교보e캐시 지급해 드립니다.
    교보e캐시 1,000원
    • 첫 구매 후 3일 이내 다운로드 시 익일 자동 지급
    • 한 ID당 최초 1회 지급 / sam 이용권 제외
    • 구글북액션을 통해 교보eBook 구매 이력이 없는 회원 대상
    • 교보e캐시 1,000원 지급 (유효기간 지급일로부터 7일)