채널톡 아이콘

FastAPI 백엔드 개발 완전정복 - Pydantic v2, OAuth 2.0, SQLAlchemy

이 강의는 FastAPI로 백엔드 API를 설계하고 구현하는 41차시, 약 22시간의 과정입니다. FastAPI는 쉽게 시작할 수 있는 프레임워크입니다. 문서를 훑고 몇 줄 쓰면 API가 돌아갑니다. 문제는 그다음입니다. 요청이 어디를 거쳐 함수 파라미터에 도착하는지, 의존성이 언제 정리되는지, 예외가 어느 지점에서 잡히는지를 모르면 조금만 복잡해져도 막힙니다. 이 강의는 그 내부 동작을 따라가는 데 시간을 씁니다. 시작은 개발 환경입니다. conda와 venv 두 방식을 모두 다루고, VS Code REST Client와 Swagger UI로 요청을 보내 보며 HTTP 요청과 응답의 구조를 손에 익힙니다. 이어서 경로 파라미터와 쿼리 파라미터의 차이를 다루는데, 422 에러가 왜 나는지를 타입 체킹과 연결해 설명합니다. Pydantic은 이 강의에서 가장 깊게 파는 영역입니다. 스칼라 타입부터 날짜·UUID·Decimal, Enum과 Literal까지 훑은 뒤 BaseModel로 넘어갑니다. Field()로 조건을 걸고, @field_validator로 단일·복수 필드를 검증하고, @model_validator의 before와 after 동작 차이까지 다룹니다. Pydantic v2 기준이라 최신 문법 그대로 실무에 옮길 수 있습니다. 중반부는 구조화와 의존성 주입입니다. APIRouter로 파일을 나누고, 함수와 클래스를 의존성으로 쓰는 방법, Sub-dependency, 데코레이터 레벨 의존성을 순서대로 다룹니다. 여기서 yield에 네 차시를 배정합니다. 제너레이터의 동작 원리, raise로 호출 스택을 거슬러 예외를 전달하는 과정, throw()로 yield 지점에 예외를 주입하는 방식까지 파고듭니다. yield가 포함된 의존성에서 자원 정리가 어떻게 이루어지는지 이해하면 DB 세션 관리가 명확해집니다. 후반부는 인증과 데이터베이스입니다. OAuth 2.0의 개념과 네 가지 Grant Type을 정리하고, JWT 발급·검증, OAuth2PasswordBearer의 내부 실행 로직, Security()와 scopes를 이용한 권한 제어를 구현합니다. 이어서 Google·카카오·네이버 클라이언트를 직접 설정하고 Authorization Code Grant 방식으로 소셜 로그인을 붙입니다. 마지막으로 SQLAlchemy ORM을 다루며 create_engine의 URL 구조, Dialect와 DBAPI의 역할, 트랜잭션, 세션, 모델과 테이블 생성까지 이어집니다. "동작하는 코드"를 넘어 "왜 그렇게 동작하는지"를 알고 싶은 분에게 맞는 강의입니다

1명 이 수강하고 있어요.

난이도 초급

수강기한 무제한

fastapitutorial
fastapitutorial
pythonbackenddev
pythonbackenddev
restfulapis
restfulapis
apiauthentication
apiauthentication
sqlalchemy
sqlalchemy
fastapitutorial
fastapitutorial
pythonbackenddev
pythonbackenddev
restfulapis
restfulapis
apiauthentication
apiauthentication
sqlalchemy
sqlalchemy

수강 후 이런걸 얻을 수 있어요

  • 개발 환경 구성 - conda와 venv로 가상환경을 만들고 FastAPI와 uvicorn을 설치해 실행할 수 있다.

  • Pydantic v2 타입과 검증 - 스칼라·날짜·UUID·Enum 등 다양한 타입을 활용하고 BaseModel로 데이터를 검증·변환할 수 있다.

  • 응답 검증과 라우팅 구조화 - response_model로 응답을 검증하고 APIRouter로 path operation을 파일 단위로 관리할 수 있다.

  • yield 의존성과 예외 처리 - 제너레이터의 동작 원리를 이해하고 yield가 포함된 의존성에서 자원 정리와 예외 처리를 구현할 수 있다.

  • OAuth 2.0과 권한 제어 - OAuth 2.0의 Grant Type을 구분하고 Security()와 scopes로 세밀한 권한 제어를 구현할 수 있다.

  • SQLAlchemy ORM 활용 - create_engine과 세션을 설정하고 모델을 정의해 테이블을 생성하며 트랜잭션을 제어할 수 있다.

  • Path Operation과 파라미터 처리 - 경로 파라미터와 쿼리 파라미터의 차이를 이해하고 필수·선택·반복 파라미터를 구현할 수 있다.

  • Field와 Validator 활용 - Field()로 조건을 지정하고 @field_validator, @model_validator로 세밀한 검증 로직을 구현할 수 있다.

  • 의존성 주입 설계 - 함수·클래스를 의존성으로 사용하고 Sub-dependency와 데코레이터 레벨 의존성으로 공통 로직을 재사용할 수 있다.

  • JWT 인증 구현 - JWT 구조를 이해하고 토큰 발급·검증과 Depends()를 이용한 사용자 인증을 구현할 수 있다.

  • 소셜 로그인 연동 - Google·카카오·네이버 클라이언트를 설정하고 Authorization Code Grant 방식으로 소셜 로그인을 구현할 수 있다.

Python으로 백엔드 개발을 시작하고 싶으신가요? 또는 FastAPI를 사용하고 있지만 데이터 검증, 의존성 주입, 인증 처리와 데이터베이스 연동이 어렵게 느껴지시나요?

이 강의에서는 FastAPI를 활용한 REST API 개발의 기초부터 실무에 필요한 핵심 기술까지 단계별로 학습합니다.

개발 환경 설정부터 경로 및 쿼리 파라미터 처리, Pydantic v2를 이용한 데이터 검증, APIRouter를 활용한 프로젝트 구조화, 의존성 주입과 예외 처리까지 차근차근 익힙니다. 또한 JWT와 OAuth 2.0을 이용한 인증 및 권한 제어, Google·카카오·네이버 소셜 로그인, SQLAlchemy ORM을 통한 데이터베이스 연동까지 실습합니다.

단순히 코드를 따라 작성하는 데 그치지 않고, 요청 데이터가 처리되는 과정과 의존성의 실행 및 정리 원리, 예외가 전달되는 방식까지 이해하는 것이 이 강의의 목표입니다.

이 강의를 통해 다음과 같은 역량을 키울 수 있습니다.

  • FastAPI를 이용한 REST API 설계 및 구현

  • Pydantic을 활용한 데이터 검증과 변환

  • 유지보수하기 쉬운 API 프로젝트 구조 설계

  • 의존성 주입과 예외 처리 구현

  • JWT 인증 및 OAuth 2.0 기반 권한 관리

  • 소셜 로그인 연동

  • SQLAlchemy를 이용한 데이터베이스 모델링과 트랜잭션 관리

이러한 기술은 웹 서비스 개발, 백엔드 시스템 구축, AI 모델 API 서빙, 데이터 서비스 개발 및 다양한 Python 기반 애플리케이션에 활용할 수 있습니다.

Python의 기본 문법을 알고 있다면 백엔드 개발 경험이 없어도 학습을 시작할 수 있습니다. 약 22시간의 강의와 실습 자료를 통해 기초부터 핵심 개념까지 체계적으로 익혀 보세요.

FastAPI의 작동 원리를 이해하고, 실제 프로젝트에 적용할 수 있는 백엔드 개발 역량을 갖추는 것이 이 강의의 목표입니다.

What You’ll Learn

핵심 키워드 (Core Keywords)

이 강의에서는 FastAPI를 활용한 백엔드 개발의 핵심 개념과 실무 기술을 단계별로 학습합니다.

1. FastAPI와 REST API 개발

  • FastAPI 및 Uvicorn 설치와 개발 환경 구성

  • Path Operation과 HTTP 요청 처리

  • 경로 파라미터와 쿼리 파라미터 활용

  • REST API 설계 및 응답 처리

2. Pydantic v2와 데이터 검증

  • BaseModel을 이용한 데이터 모델 정의

  • Python 타입 힌트와 데이터 타입 변환

  • Field()를 이용한 입력값 조건 설정

  • field_validator와 model_validator를 이용한 데이터 검증

  • response_model을 이용한 응답 데이터 검증

3. API 구조화와 의존성 주입

  • APIRouter를 이용한 라우팅 구조화

  • 함수 및 클래스 기반 의존성 주입

  • Sub-dependency와 공통 로직 재사용

  • yield를 이용한 자원 관리

  • 예외 전달과 예외 처리 원리

4. JWT 인증과 OAuth 2.0

  • JWT 토큰의 구조와 발급 및 검증

  • Bearer 토큰과 OAuth2PasswordBearer 활용

  • 사용자 인증 및 권한 관리

  • Security()와 scopes를 이용한 접근 제어

  • OAuth 2.0 Grant Type 이해

5. 소셜 로그인 구현

  • Google, 카카오, 네이버 개발자 클라이언트 설정

  • Authorization Code Grant 방식 이해

  • 외부 인증 서비스를 활용한 로그인 연동

6. SQLAlchemy ORM과 데이터베이스

  • create_engine을 이용한 데이터베이스 연결

  • Dialect와 DBAPI의 역할 이해

  • ORM 모델 정의와 테이블 생성

  • 데이터베이스 세션 관리

  • SQL 실행과 트랜잭션 제어

이러한 핵심 키워드를 바탕으로 웹 백엔드 개발, REST API 구축, 사용자 인증 및 권한 관리, 데이터베이스 연동, AI·머신러닝 모델의 API 서비스화 등 다양한 분야에 적용할 수 있는 기술을 익힙니다.

강의는 Python 기본 문법을 알고 있는 학습자를 대상으로 하며, 기초적인 API 작성부터 실무에 필요한 백엔드 핵심 기능까지 체계적으로 다룹니다.

Before You Enroll

선수 지식 및 수강 안내 (Prerequisites & Notices)

1. 사전 지식 및 준비 사항

이 강의는 Python 기본 문법을 알고 있는 학습자를 대상으로 합니다. 백엔드 개발 경험은 없어도 되지만, 함수, 클래스, 데코레이터 등 Python의 기본 개념을 이해하고 있으면 학습에 도움이 됩니다.

  • Python 기본 문법에 대한 이해

  • 타입 힌트에 대한 기초 지식 (권장)

  • VS Code 또는 원하는 코드 편집기

  • Windows 환경 및 PowerShell 사용 권장

  • HTTP와 REST API에 대한 기초 지식 (강의에서 관련 개념을 설명합니다)

  • SQL의 SELECT, INSERT 문에 대한 기초 지식

  • Google, 카카오, 네이버 개발자 계정 (소셜 로그인 실습에 필요)

2. 강의 영상 및 학습 자료

본 강의는 약 22시간 분량의 동영상 강의로 구성되어 있으며, 차시별 PDF 자료와 Python 실습 코드(.py, .ipynb, .http)를 제공합니다.

효과적인 학습을 위해 다음 방법을 권장합니다.

  • 강의를 시청하면서 직접 코드를 작성하고 실행해 보세요.

  • 각 섹션이 끝날 때 배운 내용을 작은 API 프로젝트에 적용해 보세요.

  • Swagger UI 또는 REST Client를 사용해 요청과 응답을 테스트해 보세요.

  • 오류가 발생하면 오류 메시지를 확인하고 원인을 분석하는 습관을 기르세요.

  • JWT 인증, 의존성 주입, 데이터베이스 연동과 같은 핵심 개념은 반복해서 실습하세요.

영상과 음성의 구체적인 기술 사양은 별도로 명시되어 있지 않습니다. 원활한 학습을 위해 안정적인 인터넷 연결과 코드 실행이 가능한 개발 환경을 준비하세요.

3. 질문 및 학습 지원

학습 중 이해하기 어려운 개념이나 실습 오류가 발생하면 강의 플랫폼에서 제공하는 질문 및 토론 기능을 이용해 질문할 수 있습니다. 질문할 때는 오류 메시지, 관련 코드, 예상한 결과와 실제 결과를 함께 작성하면 문제를 더 명확하게 파악하는 데 도움이 됩니다.

4. 강의 업데이트 안내

FastAPI, Pydantic, SQLAlchemy 등 관련 기술은 지속적으로 발전할 수 있습니다. 강의에 명시된 버전과 최신 버전 사이에 문법이나 동작 차이가 발생할 수 있으므로 공식 문서도 함께 참고하는 것을 권장합니다.

강의의 향후 업데이트 일정은 별도로 확정되어 있지 않습니다. 최신 기능이나 변경 사항을 학습할 때는 사용하는 라이브러리의 버전과 호환성을 확인하세요.

이런 분들께
추천드려요

학습 대상은
누구일까요?

  • Python은 다룰 줄 알지만 백엔드 개발은 처음인 개발자

  • Flask나 Django를 쓰다가 FastAPI로 넘어오려는 분

  • 문서를 보고 코드는 쓰지만 내부 동작이 불명확해 답답한 FastAPI 사용자

  • 카카오·네이버 소셜 로그인을 직접 붙여야 하는 국내 서비스 개발자

  • JWT와 OAuth 2.0을 개념부터 구현까지 정리하고 싶은 분

  • AI 모델을 API로 서빙하기 위해 백엔드 기초가 필요한 데이터·ML 엔지니어

  • 포트폴리오에 올릴 REST API 프로젝트가 필요한 취업 준비생

선수 지식,
필요할까요?

  • Python 기본 문법 (함수, 클래스, 데코레이터에 대한 이해)

  • 타입 힌트를 접해 본 경험이 있으면 수월합니다

  • Windows 환경 기준으로 진행합니다 (PowerShell 설정을 다룹니다)

  • VS Code 또는 사용 중인 코드 에디터

  • HTTP와 REST에 대한 기초 개념 (강의에서 다시 설명합니다)

  • Google·카카오·네이버 개발자 계정 (소셜 로그인 실습에 필요하며 모두 무료입니다)

  • 데이터베이스 기초 지식 (SELECT, INSERT 정도면 충분합니다)

  • 차시별 강의 자료 PDF와 실습 코드(.py, .ipynb, .http)가 제공됩니다

안녕하세요
it learner입니다.

IT 분야별 실무 전문가와 전문 강사진이 진행하는 IT 교육 과정으로, 프로그래밍, 소프트웨어 개발, 데이터 분석, 인공지능, 네트워크 및 정보기술 등 다양한 분야의 실무 중심 강의를 제공합니다. 최신 IT 기술과 산업 동향을 반영한 교육 콘텐츠를 통해 학습자가 이론적 지식과 실무 역량을 함께 습득하고, 빠르게 변화하는 IT 환경에 적응할 수 있도록 지원합니다.

커리큘럼

전체

41개 ∙ (21시간 52분)

해당 강의에서 제공:

수업자료
강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!

it learner님의 다른 강의

지식공유자님의 다른 강의를 만나보세요!

비슷한 강의

같은 분야의 다른 강의를 만나보세요!

얼리버드 할인 중

₩55,170

14%

₩64,900

평생교육이용권 지원 강의