나에게 필요한 지식과 기술을 검색해 보세요.

FastAPI를 사용한 파이썬 웹 개발

라우팅 기초부터 이벤트 플래너 애플리케이션 구축 및 배포까지 I 윈도우/리눅스 명령어 제공

지은이

압둘라지즈 압둘라지즈 아데시나

옮긴이

김완섭

출간일

2023.03.20

레벨

중급

평점

4.7(33명)

정가

16,000

총 결제 금액

16,000

전자책 사용 안내

전자책은 웹뷰어와 한빛+ 앱에서 열람할 수 있으며 PDF 다운로드는 지원되지 않습니다.

쪽수

208P

ISBN

9791169216647

브랜드

한빛미디어

FastAPI의 핵심 기능과 5가지 기술 스택(몽고DB, 도커, pydantic, SQLModel, pytest)으로

이벤트 플래너 애플리케이션을 처음부터 끝까지 완성해본다!

 

이 책의 강점은 ‘이벤트 플래너 애플리케이션 완성’이라는 목표를 가지고 라우팅부터 데이터베이스 연결, 인증, 테스트, 배포까지 FastAPI의 핵심 기능을 단계별로 적용해본다는 점입니다. 또한 쉽게 실습을 진행할 수 있도록 윈도우와 리눅스 명령어를 각각 제공합니다.

 

실습 코드는 간결하고 명확합니다. 플라스크, 장고 같은 웹 프레임워크보다 배우기 쉬운 FastAPI의 장점이 잘 반영되어 있기 때문이죠. 반대로 핵심 기능과 코드에 관한 설명은 FastAPI 공식 문서보다 꼼꼼하고 자세합니다. 따라서 웹 개발 초보자도, 다른 프레임워크로 웹 개발을 경험해본 존 개발자도 웹 개발 실력을 한층 더 높일 수 있습니다.

 

FastAPI에 익숙해진 후에는 저자가 블로그에서 제공하는 실습 자료(Okteto를 사용한 방명록 애플리케이션 구축과 몽고DB, JWT 인증, 리액트를 활용한 애플리케이션 구축 예제)를 통해 추가 학습도 진행할 수 있습니다.

 

상세이미지_700_FastAPI를 사용한 파이썬 웹 개발.jpg

출판사 리뷰

 

빠르게 배워 실무에 바로 적용하는 FastAPI 핵심 안내서

 

이 책은 파이썬 기반 웹 API 프레임워크인 FastAPI를 애플리케이션 개발에 단계별로 적용합니다. 이 과정을 통해 FastAPI의 필수 기능을 익히고 API 서버, 마이크로서비스, 빠른 개발이 필요한 백엔드 프로젝트에 활용해볼 수 있습니다.

 

또한 파이썬 3와 몽고DB를 사용해 이벤트 플래너 애플리케이션을 처음부터 끝까지 만들어봅니다. 따라서 웹 개발의 핵심인 라우팅 시스템 구축은 물론 데이터베이스, 보안, 테스트와 배포까지 웹 개발의 전과정을 어렵지 않게 경험할 수 있습니다.

 

파이썬에 관한 기본 지식만 있다면 웹 개발 경험이 전혀 없는 사람도 수월하게 읽을 수 있습니다. 현직 웹 개발자라면 FastAPI의 핵심 기능을 애플리케이션 개발에 적용해보며 실무 적응력을 높이고, 웹 개발 경험이 없는 사람이라면 이 책의 안내에 따라 첫 FastAPI 애플리케이션을 완성해봅시다!

 

대상 독자

- 웹 개발 실력을 레벨업하고 싶은 파이썬 사용자

- 플라스크나 장고를 사용하는 웹 개발자

- 웹 개발의 전 과정을 실습해보고 싶은 웹 개발 입문자

 

이 책에서 다루는 내용

- 라우팅 시스템

- 응답 모델링

- 오류 처리

- 템플릿

- 모델 구조화

- 데이터베이스

- 보안

- 테스트

- 배포

저자

목차

PART 1 FastAPI 시작하기

 

CHAPTER 1 FastAPI 소개

1.1 Git 기초

_Git 설치

_Git 실행

_Git 브랜치

1.2 virtualenv를 사용한 개발 환경 구축

_가상 환경 생성

_가상 환경 활성화/비활성화

1.3 pip을 사용한 패키지 관리

_pip 설치

_기본 명령

1.4 도커 설정

_도커파일

1.5 간단한 FastAPI 애플리케이션 개발

정리하기

 

CHAPTER 2 라우팅

2.1 FastAPI의 라우팅

_라우팅 예

2.2 APIRouter 클래스를 사용한 라우팅

2.3 pydantic 모델을 사용한 요청 바디 검증

_중첩 모델

2.4 경로 매개변수와 쿼리 매개변수

_경로 매개변수

_쿼리 매개변수

2.5 요청 바디

_FastAPI 자동 문서화

2.6 간단한 CRUD 애플리케이션 개발

정리하기

 

CHAPTER 3 응답 모델과 오류 처리

3.1 FastAPI의 응답

3.2 응답 모델 작성

3.3 오류 처리

정리하기

 

CHAPTER 4 템플릿팅

4.1 Jinja

_필터

_if문

_반복문

_매크로

_템플릿 상속

4.2 FastAPI에서 Jinja를 사용하는 방법

정리하기

 

PART 2 FastAPI 애플리케이션 개발하기

 

CHAPTER 5 구조화

5.1 FastAPI 애플리케이션 구조화

_이벤트 플래너 애플리케이션 개발

_모델 구현

_라우트 구현

정리하기

 

CHAPTER 6 데이터베이스 연결

실습 환경

6.1 SQLModel 설정

_테이블

_로우

_세션

6.2 데이터베이스 생성

_이벤트 생성

_이벤트 조회

_이벤트 변경

_이벤트 삭제

6.3 몽고DB 설정

_문서

_데이터베이스 초기화

6.4 CRUD 처리

_생성 처리

_조회 처리

_변경 처리

_삭제 처리

_routes/events.py

_routes/users.py

정리하기

 

CHAPTER 7 보안

7.1 FastAPI의 인증 방식

_의존성 주입

_의존 라이브러리 생성

7.2 OAuth2와 JWT를 사용한 애플리케이션 보안

_패스워드 해싱

_액세스 토큰 생성과 검증

_사용자 인증

7.3 애플리케이션 변경

_로그인 라우트 변경

_이벤트 라우트 변경

_이벤트 문서 클래스와 라우트 변경

7.4 CORS 설정

정리하기

 

PART 3 FastAPI 애플리케이션 테스트 및 배포하기

 

CHAPTER 8 테스트

8.1 pytest를 사용한 단위 테스트

_픽스처를 사용한 반복 제거

8.2 테스트 환경 구축

8.3 REST API 라우트 테스트 작성

_사용자 등록 라우트 테스트

_로그인 라우트 테스트

_CRUD 라우트 테스트

_조회 라우트 테스트

_생성 라우트 테스트

_변경 라우트 테스트

_삭제 라우트 테스트

8.4 테스트 커버리지

정리하기

 

CHAPTER 9 배포

9.1 배포 준비

_의존 라이브러리 관리

_환경 변수 설정

9.2 도커를 사용한 배포

_도커파일 작성

_도커 이미지 빌드

_로컬에 애플리케이션 배포

_애플리케이션 실행

9.3 도커 이미지 배포

_데이터베이스 배포

정리하기

리뷰

전체 평점

4.7

오탈자

등록된 오탈자가 없어요

오탈자를 발견하셨다면 작성해주세요.

16,000

16,000