본문 바로가기

리디 접속이 원활하지 않습니다.
강제 새로 고침(Ctrl + F5)이나 브라우저 캐시 삭제를 진행해주세요.
계속해서 문제가 발생한다면 리디 접속 테스트를 통해 원인을 파악하고 대응 방법을 안내드리겠습니다.
테스트 페이지로 이동하기

파이썬 플라스크 웹 앱 개발 입문 상세페이지

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

<파이썬 플라스크 웹 앱 개발 입문> 파이썬 개발자들에게 가장 인기있는 웹 프레임워크 플라스크(Flask)를
이용한 웹 앱 개발의 기본과 핵심!
간단한 앱 만들기부터 머신러닝을 앱에 적용하는 방법까지,
기초부터 실무 적용을 한 번에!

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



출판사 서평

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

플라스크(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 등 해외 컨퍼런스에 도 등단한 경험이 있다.

감수 테라다 마나부
(주)CMS커뮤니케이션즈 대표. 파이썬 관련 컨설팅, 구축 작업을 전문으로 하고 있다. 2010부터 일본 파이썬 커뮤니티와 적극 연동하여 PyCon JP 개최에 주력했고, 2013년 3월부터 사단법인 PyCon JP Association 대표 이사로 역임하는 등 파이썬 교육에 매진하고 있다. 파이썬의 매력을 알리 기 위해 초보자를 위한 머신러닝 학습분야 파이썬 강사로 활약중이며, 파 이썬을 중심으로 테크 화제를 다루는 팟캐스트’terapyon channel’을 운영 중이다.
저서로는 「머신러닝 도감(機械学習図鑑)」(상영사, 2019, 공저),「파이썬에 의 한 새로운 데이터 분석의 교과서(Pythonによるあたらしいデータ分析の教科書)」(상영사. 2018, 공저),

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

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

목차

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 데이터베이스를 이용한 앱 만들기
2.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


리뷰

구매자 별점

0.0

점수비율
  • 5
  • 4
  • 3
  • 2
  • 1

0명이 평가함

리뷰 작성 영역

이 책을 평가해주세요!

내가 남긴 별점 0.0

별로예요

그저 그래요

보통이에요

좋아요

최고예요

별점 취소

구매자 표시 기준은 무엇인가요?

'구매자' 표시는 리디에서 유료도서 결제 후 다운로드 하시거나 리디셀렉트 도서를 다운로드하신 경우에만 표시됩니다.

무료 도서 (프로모션 등으로 무료로 전환된 도서 포함)
'구매자'로 표시되지 않습니다.
시리즈 도서 내 무료 도서
'구매자’로 표시되지 않습니다. 하지만 같은 시리즈의 유료 도서를 결제한 뒤 리뷰를 수정하거나 재등록하면 '구매자'로 표시됩니다.
영구 삭제
도서를 영구 삭제해도 ‘구매자’ 표시는 남아있습니다.
결제 취소
‘구매자’ 표시가 자동으로 사라집니다.

이 책과 함께 구매한 책


이 책과 함께 둘러본 책



본문 끝 최상단으로 돌아가기

spinner
모바일 버전