
구매문의 및 도서상담은 031-944-3966(매장)으로 문의해주세요.
매장전집은 전화 혹은 매장방문만 구입 가능합니다.

지은이 : 신동현
웹 서비스 개발, 시스템 설계, 클라우드 인프라 구축 전반에 걸쳐 실무 역량을 쌓고, 2023년 AWS Security GameDay에서 우승했습니다. 스타트업부터 유니콘 기업에 이르기까지 여러 조직에서 커머스, 핀테크, 헬스케어 등의 백엔드 시스템 설계 및 개발을 담당했으며, 현재는 이러한 실무 경험을 바탕으로 온라인 강의와 부트캠프에서 프로그래밍 교육에 집중하고 있습니다. 단순히 문법 한 줄 더 아는 것보다 문제를 마주했을 때 엔지니어답게 생각하는 '근육'을 길러주고 싶은 마음으로 교육에 임하고 있습니다.- 인프런 https://inflearn.com/users/@qu3vipon
1장. FastAPI 소개
1.1 FastAPI 개요
__1.1.1 클라이언트-서버 모델
__1.1.2 FastAPI 소개
__1.1.3 FastAPI의 발전 과정
1.2 FastAPI의 특징
__1.2.1 타입 힌트를 이용한 데이터 검증
__1.2.2 API 문서 자동 생성
__1.2.3 비동기 방식 지원
1.3 파이썬 웹 프레임워크 비교
__1.3.1 Flask
__1.3.2 Django
__1.3.3 Flask, Django, FastAPI 비교
1.4 실습 환경 설정
__1.4.1 파이썬 설치하기
__1.4.2 파이참 설치하기
__1.4.3 프로젝트 생성하기
__1.4.4 가상환경 만들기
__1.4.5 애플리케이션 실행하기
2장 FastAPI 시작하기
2.1 HTTP 개요
__2.1.1 요청 메시지
__2.1.2 응답 메시지
2.2 경로 다루기
__2.2.1 기본 사용법
__2.2.2 경로 변수
__2.2.3 엔드포인트
2.3 쿼리 파라미터 다루기
__2.3.1 기본 사용법
__2.3.2 쿼리 파라미터의 선택적 사용
2.4 Pydantic 다루기
__2.4.1 기본 사용법
__2.4.2 정상 값 검증
__2.4.3 비정상 값 검증
2.5 요청 본문 다루기
__2.5.1 기본 사용법
__2.5.2 Swagger UI 화면 구성
__2.5.3 경로 변수, 쿼리 파라미터, 요청 본문 혼합 사용
2.6 응답 본문 다루기
__2.6.1 기본 사용법
__2.6.2 상태 코드
3장. 기본 CRUD 구현하기
3.1 REST API 개요
__3.1.1 REST API의 개념
__3.1.2 REST API 설계 원칙
3.2 GET API: 전체 데이터 조회하기
__3.2.1 새 프로젝트 만들기
__3.2.2 응답 모델 정의하기
__3.2.3 전체 할 일 조회하기
3.3 GET API: 단일 데이터 조회하기
__3.3.1 단일 할 일 조회하기
__3.3.2 예외 처리하기
3.4 POST API: 데이터 생성하기
__3.4.1 생성 요청 모델 정의하기
__3.4.2 할 일 생성하기
3.5 PUT/PATCH API: 데이터 수정하기
__3.5.1 수정 요청 모델 정의하기
__3.5.2 할 일 수정하기
3.6 DELETE API: 데이터 삭제하기
__3.6.1 할 일 삭제하기
4장. 데이터베이스와 ORM 사용하기
4.1 데이터베이스 개요
__4.1.1 데이터베이스의 개념
__4.1.2 관계형 데이터베이스와 SQL
__4.1.3 MySQL
4.2 데이터베이스 구축하기
__4.2.1 윈도우에 MySQL 설치하기
__4.2.2 맥OS에 MySQL 설치하기
4.3 ORM과 SQLAlchemy
__4.3.1 ORM의 개념
__4.3.2 SQLAlchemy
__4.3.3 SQLAlchemy와 데이터베이스 연결하기
4.4 ORM 모델 정의 및 테이블 생성하기
__4.4.1 ORM 모델 정의하기
__4.4.2 테이블 생성하기
4.5 ORM 활용하기
__4.5.1 전체 할 일 조회하기
__4.5.2 단일 할 일 조회하기
__4.5.3 할 일 생성하기
__4.5.4 할 일 수정하기
__4.5.5 할 일 삭제하기
5장. 회원가입 구현하기
5.1 회원가입 기능 설계하기
__5.1.1 회원가입이 필요한 이유
__5.1.2 회원가입 처리 과정
5.2 User 모델 만들기
__5.2.1 User 모델 설계하기
__5.2.2 ORM 객체 관계 이해하기
__5.2.3 User 모델 구현하기
__5.2.4 User 테이블 생성
5.3 라우터 구조화
__5.3.1 라우터의 개념
__5.3.2 Todo 라우터 분리하기
__5.3.3 User 라우터 추가하기
5.4 회원가입 API 구현하기
__5.4.1 요청 데이터 검증하기
__5.4.2 이메일 중복 검사하기
__5.4.3 비밀번호 해시 생성하기
__5.4.4 User 모델 생성 후 DB 저장하기
__5.4.5 응답 반환하기
6장. 로그인과 인증 구현하기
6.1 로그인과 인증 개요
__6.1.1 로그인의 개념
__6.1.2 인증의 개념
6.2 로그인 API 구현하기
__6.2.1 로그인 요청 모델 정의하기
__6.2.2 로그인 API 함수 구현하기
6.3 세션 방식으로 인증 구현하기
__6.3.1 세션 방식의 처리 과정
__6.3.2 세션 생성하기
__6.3.3 세션 기반 사용자 인증하기
__6.3.4 로그아웃 구현하기
6.4 JWT 방식으로 인증 구현하기
__6.4.1 JWT 방식의 처리 과정
__6.4.2 JWT의 기본 구조
__6.4.3 액세스 토큰 발급하기
__6.4.4 Authorization 헤더 기반 사용자 인증하기
__6.4.5 로그아웃 구현하기
__6.4.6 세션 방식과 JWT 방식 비교
7장. FastAPI 고급 기능
7.1 Lifespan
__7.1.1 Lifespan 기본 사용법
__7.1.2 Lifespan 사용 예: 데이터베이스 초기화
__7.1.3 Lifespan 사용 예: 머신러닝 모델 로드
7.2 의존성 주입
__7.2.1 의존성 주입 방법
__7.2.2 데이터베이스 세션 주입하기
7.3 백그라운드 태스크
__7.3.1 백그라운드 태스크 기본 사용법
__7.3.2 백그라운드 태스크 사용 시 주의사항
7.4 파일 처리
__7.4.1 파일 업로드하기
__7.4.2 파일 저장하기
__7.4.3 파일 다운로드하기
__7.4.4 파일 처리 시 주의사항
도서 DB 제공 - 알라딘 인터넷서점 (www.aladin.co.kr)