강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Back-end

FastAPI 完全ガイド

本講義はFastAPIの核心機能とともに、Webサービス開発の全過程を習得できるように構成しました。本講義を通じて、皆様を現場で必要とするFastAPI専門開発者に成長させていただきます。

  • dooleyz3525
이론 실습 모두
블로그만들기토이프로젝트
파이썬개발자
파이썬프레임워크
Python
FastAPI
SQL
SQLAlchemy

学習した受講者のレビュー

こんなことが学べます

  • FastAPIのコアコンポーネントを習得する

  • Pydantic Modelを扱う

  • SQLAlchemyベースでデータベースを扱い、信頼性の高いDBハンドリングコードを作成する

  • SQLAlchemy での非同期 (Asynchronous) DB Handling

  • Jinja2テンプレートエンジンを扱う

  • FastAPIからのファイルのアップロード

  • FastAPIでMVCベースのモジュールを実装する

  • さまざまなFastAPIの例外と例外ハンドリング方法

  • Middlewareを扱う

  • FastAPIのAuthenticationとLogin

  • Cookie と SessionMiddleware ベースの Signed Cookie

  • Redisを活用したSessionの取り扱い

より速くて便利
モダンなWeb / API開発をしたい場合は?

FastAPIは短期間で急速に成長しており、開発者コミュニティでの強力な支持を通じてその領域を急速に拡大しています。


なぜFastAPIですか?

1. 優れた性能

ASGI標準に準拠したFastAPIは非同期でリクエストを処理し、Python Webフレームワークの中でも断然最高の速度を提供します。高速応答速度は、今日多数のユーザーを同時に受け入れる必要がある大規模なアプリケーションにとって不可欠な要素です。

2. 開発者のための直感的な設計

FastAPIは、開発者がより効率的かつ生産的に作業できるように設計されています。直感的な内部API、Dependcy Injection機能、一元化されたタイプヒント、および自動的に生成されるOpenAPIドキュメントは、開発中のエラーを最小限に抑え、プロジェクトの速度を飛躍的に向上させます。

3. 便利なデータ処理と検証

FastAPIはPydanticと完全に統合され、データ検証とシリアル化、解析プロセスを安全かつ正確に処理します。これにより、開発者はより効率的で信頼性の高いコードを書くことができ、複雑なデータ構造も簡単に扱うことができます。

4. 非同期処理の無限の可能性

FastAPI は、非同期プログラミングを通じて同時に複数のタスクを処理する能力を提供します。特に、データベースや外部APIなどのI / Oバウンド操作で光を放出し、迅速で反応性の高いアプリケーションを構築できます。

FastAPI 難しいことではありません - このレッスンであれば、

FastAPIのコアコンポーネントから高度な概念まで体系的な学習

FastAPIの基本概念を確実に習得し、非同期プログラミング、ミドルウェア処理、高度な認証技術まで取り上げ、初心者と経験者の両方に適した段階的な学習を提供します。


特にBlogアプリケーションを開発しながら

基本的な機能から始めて徐々にアプリケーションを高度化し、FastAPIに関連するさまざまな技術を自然に習得できます。


様々な実習例による学習

講義は理論25%、実習75%で構成されており、FastAPIの基礎から専門家レベルの機能まで自然に習得できるよう、様々な実習授業でカリキュラムを満たしています。

ほとんどの練習クラスはライブコーディングで行われます。段階的にじっくりと映像を追ってみると、自信を持ってFastAPIを扱えるレベルに達した自分で発見することができるでしょう。

FastAPI自体しか扱いません。
FastAPIを活用したWebサービス開発の全過程をカバーします。

1. Enterpriseレベルで使用されるDatabaseコーディングテクニック

Databaseクライアントコードは、信頼性の高いDBのリソース保護が不可欠です。 Connection Pooling、Connection、Cursorなどの動作メカニズム、パフォーマンスと安定したDatabaseを活用するためにPythonコードをどのように書くべきかについての重要な要素を詳しく説明します。

また、SQLAlchemyを活用したデータベース操作と非同期データベース処理技術を深く学習します。

2.実践中心の Blog Application プロジェクトベースの学習

講義はブログアプリケーションを直接開発しながら行われます。基本的な機能から始めて徐々にアプリケーションを高度化し、FastAPIに関連する様々なスキルを実習を通じて自然に身につけることができます。

3. Pydanticを理解するための詳細な説明と実践

FastAPIをうまく扱うには、Pydanticの理解が不可欠です。このレッスンでは、Pydantic自体に説明と実践だけでなく、FastAPIにPydanticを適用するときに注意すべき事項とエラーが発生した場合の解決策を提供します。

4. Jinja2テンプレートエンジンによる動的Webページの構築

FastAPIでは、Jinja2テンプレートエンジンを活用してユーザーエクスペリエンスを向上させ、フロントエンドとバックエンドをシームレスに統合する技術を習得できます。

5.強力なエラー処理と例外管理技術

さまざまな例外状況に備えて、FastAPIが提供する例外処理機能を学習し、アプリケーションの信頼性を向上させる方法を学びます。また、共通のエラー処理パターンを身につけてコードのメンテナンス性を向上させます。

6. ミドルウェアの取り扱い

FastAPIで組み込まれているミドルウェアの適用に加えて、カスタムミドルウェアを直接作成する方法について学びます。カスタムミドルウェアを作成しながら、ミドルウェアの内部構造を理解するだけでなく、FastAPIの拡張機能を直接実装する能力を持つことができます。

7. 高度な認証とセッション管理:署名されたクッキーとRedisの活用

安全な認証システムを設計し、Redisを使用したセッション管理と署名付きCookieの実装方法を学び、大規模なトラフィックを処理できる信頼性の高いWebアプリケーションを構築できます。

この講義はORMを扱いません。

本講義はDatabase CRUDについて多くの実習内容を盛り込んでいますが、 ORM(Object-Relational Mapping)を扱わず、ただSQLに基づいてCRUDを行っています。講義を選択する際の利点を参考にしてください。

受講前の注意

練習環境💾

練習環境

  • オペレーティングシステム(OS):練習はWindowsオペレーティングで行われますが、Macでも問題なく実行されます。 VSCode、FastAPI、MySQL、Redis がインストールできる環境であればよい。


  • PC仕様:インターネット接続が可能な基本仕様のPC

学習資料

  • 講義資料は講義内からダウンロードできます。

  • 練習資料はhttps://github.com/chulminkw/fastapi_pguideからダウンロードできます。練習コードを見ると、講義の受講に必要なPythonレベルを事前に見積もることができます。

選手の知識

  • FastAPIを使用したWeb開発の全プロセスをカバーしているため、Pythonは初中級以上の経験が必要です。

  • 練習の多くにはRDBMS CRUDが含まれていますが、基本的なSQL能力だけで十分です。


  • UIはBootstrapを利用しますが、実習理解はHTMLの基本程度だけをご存知であれば十分です。

こんな方に
おすすめです

学習対象は
誰でしょう?

  • FastAPIを学びたい人

  • 簡単なFastAPI機能を超えてPythonベースのWebアプリケーションの実装を体系的に学びたい方

  • 非同期フレームワークの活用などを通じて既存のWeb/APIの性能改善をご希望の方

  • 既存のJava、Node.jsベースのバックエンド開発者からPythonベースのバックエンド開発者への移行が必要な方

  • 強力なパフォーマンスと簡潔な利便性を備えたモダンなWebフレームワークをお探しの方

  • (本講義では扱いませんが)マシンラーニングモデルのサービングのための非同期APIフレームワークをお探しの方

前提知識、
必要でしょうか?

  • 中級レベルのPython活用能力

  • SQL基礎活用能力

  • HTMLの基礎

こんにちは
です。

26,052

受講生

1,289

受講レビュー

3,969

回答

4.9

講座評価

13

講座

(전) 엔코아 컨설팅

(전) 한국 오라클

AI 프리랜서 컨설턴트

파이썬 머신러닝 완벽 가이드 저자

カリキュラム

全体

164件 ∙ (25時間 8分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

46件

4.9

46件の受講レビュー

  • 안창신님의 프로필 이미지
    안창신

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    내용도 충실하고 제게 딱 맞는 강의였습니다. 저는 전부 RAW SQL로 처리해야 하는 상황이라서 ORM은 다루지 않아서 더 좋았습니다. 강의를 들으면서 제가 실제로 사용할 엔드포인트 하나하나 만들면서 진행하느라 시간이 꽤 걸렸네요. 강사님 감사합니다. 참고로 scoop 같은 윈도우 패키지 관리도구 쓰시는 분들은 redis 7.4.1 최신버전이 패키징 되어서 복잡한 WSL 셋팅없이 한 줄 설치가 가능합니다. 3점대 예전버전 설치하지 않아도 됩니다. https://github.com/redis-windows/redis-windows 강의 듣는 분들께 도움이 되었으면 좋겠습니다.

    • 권 철민
      知識共有者

      오, 장문의 수강평 감사드립니다. Windows Redis 관련해서 좋은 정보도 감사드립니다.

  • 임찬님의 프로필 이미지
    임찬

    受講レビュー 14

    平均評価 4.9

    修正済み

    5

    87% 受講後に作成

    Kafka 강의를 매우 유익하게 수강하여 고민도 없이 선택했습니다. 저의 선택은 틀리지 않았습니다. Fast API라는 프레임워크만 집중하지 않고 중간중간 웹 개발에 필요한 여러 개념 및 요소들을 첨가하여 전반적인 웹에 대한 이해도 배울 수 있었습니다. 현 시점에서도 Django가 더 활성화된 상태이지만, 미래를 위한 선택으로 탁월했으며 앞으로 선생님의 진가인 머신러닝 - 딥러닝 강의가 나오면 폭발적인 시너지가 나올 것으로 예상합니다. 기다리겠습니다. 감사합니다.

    • leejken530님의 프로필 이미지
      leejken530

      受講レビュー 13

      平均評価 4.2

      5

      27% 受講後に作成

      재밌고 질문도 금방 답변해주셔서 좋습니다. 다른 강의도 다 들어볼 생각입니다.

      • tiaz.dev님의 프로필 이미지
        tiaz.dev

        受講レビュー 6

        平均評価 5.0

        5

        21% 受講後に作成

        빠르게 많은 내용을 정리할 수 있어서 좋습니다. FastAPI를 여기저기 다른 플랫폼에서 공부하고 책도 봤지만, 가장 이해하기 쉽고 제대로 배울수 있었습니다. 라이브코딩이 많다고 조금 걱정했습니다. 자칫 '지루할 수도 있지 않을까?' 했지만, 준비해두신 로직을 빠르게 다시 코딩하면서 설명 해주시니 더 이해하기 좋았습니다. 이전 리뷰에서 마이크가 약간 문제가 있다고 하셨는데, 개선되어 크게 불편하지는 않았습니다. ORM이 빠진 것은 조금 아쉽기는 합니다. ORM에 대해서 어떤 생각이신지 그리고 어떻게 사용하면 좋은지 꼭 들어보고 싶습니다. 다음 백엔드 심화 강의도 꼭 나왔으면 합니다!

        • 권 철민
          知識共有者

          오, 훌륭한 수강평 감사드립니다. 더욱이 시간을 내주셔서, 이렇게 장문의 수강평을 적어 주셔서 감사합니다. ORM은 호불호가 극단으로 갈려서, 제 개인적인 의견이 조심스럽니다. 강의에서도 짧게 언급드리지만, 어느정도 DB 경험 경력이 되신다면 ORM 사용 여부는 개인의 선택 사항이라고 생각됩니다. 하지만 DB 경험이 얼마 안되신다면 ORM보다는 SQL을 바로 사용하는게 반드시 필요하다고 생각됩니다. 꼬~옥 제 개인적인 의견이 더 필요하시다면 Q&A에 해당 질문을 올려 주시면 좀 더 추가 답변 드리겠습니다. 감사합니다.

      • Hwaseong Nam님의 프로필 이미지
        Hwaseong Nam

        受講レビュー 9

        平均評価 5.0

        5

        30% 受講後に作成

        질문 답변 소통이 원활하지 않아요.

        • 권 철민
          知識共有者

          평점을 잘 주신 것은 감사드립니다만, 저는 강의의 질의 응답에 매우 많은 노력을 기울이고 있고, 거의 대부분 1일 이내에 답변을 드리고 있습니다. 혹시나 제가 모르고 빠뜨린 질문이 있어서 그런지 몰라서, 커뮤니티 게시판을 뒤져봐도 Hwaseong Nam 님이 올려주신 질문을 찾지 못했습니다. 어떤 질문 때문에 이런 수강평을 적으신건지 해당 Link를 알려주시면 좋을 것 같습니다.

      ¥9,036

      dooleyz3525の他の講座

      知識共有者の他の講座を見てみましょう!

      似ている講座

      同じ分野の他の講座を見てみましょう!