여기를 클릭하면, 샘플강의가 재생됩니다.
- tag
SQLAlchemy ORM 실전 - CRUD, 쿼리, 관계 매핑으로 완성하는 데이터베이스 연동 (FastAPI)
담당강사 : 김종영
| 강의구성 | 총 10강좌 (강의시간 : 총 ) | 수강기간 | 30일 |
|---|---|---|---|
| 강의형식 | 동영상 | 수강료 |
40,000원
이 강좌의 80% 이상 수강 시 출력이 가능합니다. |
| 강의수준 | 중급 | 강의에서 사용하는 프로그램 & 버전 |
VS Code (무료) |
| 담당강사 |
김종영 강사
|
참고도서 |
| 강의구성 | 총 10강좌 (강의시간 : 총 ) |
|---|---|
| 수강기간 | 30일 |
| 강의형식 | 동영상 |
| 수강료 |
40,000원
이 강좌의 80% 이상 수강 시 출력이 가능합니다. |
| 강의수준 | 중급 |
| 강의에서 사용하는 프로그램 & 버전 |
VS Code (무료) |
| 담당강사 |
김종영 강사
|
- 수강신청
-
- 현재 강좌만 수강 신청하기
- 수강료 40,000원
- 수강기간 : 30일 수강신청
-
- 자유이용권으로 수강하기
- 총 4,194강좌 / 54,382개 영상
3개월 62,700원, 6개월 118,800원, 12개월 224,400원의 가격으로 무제한 수강해 보세요. - 자유이용권 구매 >
- 과정소개
- 본 과정은 백엔드 개발의 핵심 프레임워크인 FastAPI를 경로 파라미터, 쿼리 파라미터, 요청 본문(Body) 처리부터 실무 수준의 API 설계까지 체계적으로 학습합니다. HTTP 요청과 응답의 기본 구조, ASGI 애플리케이션의 동작 원리를 이해하고, Pydantic을 활용한 데이터 검증과 직렬화가 FastAPI 내부에서 어떻게 이루어지는지 그 원리를 탄탄히 익힙니다. 경로 파라미터와 쿼리 파라미터의 차이, BaseModel을 활용한 요청/응답 스키마 설계, response_model을 통한 응답 검증, HTTPException을 이용한 상태 코드 관리 등 API 설계의 기본기를 다진 뒤, Dependency Injection을 통한 코드 재사용과 인증/인가(JWT, OAuth2) 처리, 데이터베이스 연동, 비동기(async) 처리와 백그라운드 작업(Background Tasks), 미들웨어와 CORS 설정, 예외 처리 커스터마이징, APIRouter를 활용한 라우팅 구조화까지 실무 API 개발에 필요한 폭넓은 주제를 다룹니다. 개발 환경 구성(venv, conda)부터 VS Code를 활용한 실습 환경 설정, uvicorn 서버 실행과 Swagger UI를 통한 API 테스트, 그리고 최종적으로는 Docker를 활용한 배포까지 직접 손으로 다뤄보며, To-do 리스트 API를 예제로 CRUD 기능부터 인증이 포함된 실전 백엔드 서비스로 확장해봅니다. 이 과정을 통해 백엔드 개발을 처음 접하는 분도 FastAPI 기반 API의 동작 원리를 이해하고, 원하는 서비스에 맞는 REST API를 설계하고 배포까지 수행할 수 있는 실무 역량을 갖추게 됩니다.
- 학습목표
-
● SQLAlchemy ORM의 기본 개념과 ORM 모델을 정의하는 방법을 이해할 수 있다.
● ORM 모델을 기반으로 데이터베이스 테이블을 생성하고 컬럼 및 제약조건을 설정할 수 있다.
● SQLAlchemy 세션의 역할과 객체 상태 관리 방식을 이해하고 데이터의 생성, 조회, 수정, 삭제 작업을 수행할 수 있다.
● 조건 검색, 정렬, 그룹화, 중복 제거, JOIN 및 다양한 검색 조건을 활용하여 데이터를 조회할 수 있다.
● 외래키와 객체 간 관계를 이해하고 테이블 간 참조 관계를 ORM으로 표현할 수 있다.
- 교육대상
- FastAPI를 활용한 백엔드 API 개발의 원리를 이해하고, 실무 수준의 REST API 설계 및 구현 역량을 갖추고자 하는 개발자 및 백엔드 입문자
- 선수 과정
- 파이썬 프로그래밍 언어
차시별 학습목표
- 01. SQLAlchemy ORM에서 모델을 정의하고 테이블을 구성하는 과정을 이해할 수 있다.
- 02. SQLAlchemy에서 컬럼 타입과 제약조건을 설정하고 테이블 객체와 데이터베이스의 테이블 정보를 확인하는 방법을 이해할 수 있다.
- 03. SQLAlchemy 세션의 flush()와 commit()의 역할 차이를 이해하고, 세션을 생성하는 여러 패턴과 sessionmaker의 활용 방법을 구현할 수 있다.
- 04. 세션이 관리하는 객체의 상태 변화를 이해하고, new·dirty·deleted·identity_map을 이용하여 객체 상태를 확인할 수 있다.
- 05. SQLAlchemy 세션을 이용하여 객체를 추가·수정·삭제하는 CRUD 작업을 구현할 수 있다.
- 06. SQLAlchemy 조회 조건을 filter()와 filter_by()로 구성하고, 논리 조건과 정렬을 조합하여 원하는 데이터를 조회할 수 있다.
- 07. ORM 조회에서 모델 전체를 조회하는 경우와 특정 속성을 조회하는 경우의 결과 형태 차이를 이해하고, scalar()의 반환 규칙을 적용할 수 있다.
- 08. 조회 결과를 그룹별로 집계하는 방법과 중복된 값을 제거하여 고유한 값을 조회하는 방법을 구현할 수 있다.
- 09. 서로 관련된 테이블을 join()으로 연결하고 조인 결과에 조건을 적용하며, 패턴 및 범위 조건을 이용해 데이터를 조회할 수 있다.
- 10. ForeignKey와 relationship()의 역할을 이해하고, 참조 관계의 방향에 따라 관련 객체에 접근하는 ORM 관계를 구현할 수 있다.
- 참고사항
- - 수강 기간 중 언제든지 반복 수강이 가능합니다.
- - 수강 여부 : 해당 차시의 80%를 수강하면 (회색) 배경으로 표시됩니다.
- - 수강 신청 완료 후 수강할 수 있습니다.
- - 즐겨찾기 한 강좌는 MY Class에서 확인할 수 있습니다.