강의

멘토링

로드맵

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,436

受講生

1,326

受講レビュー

3,984

回答

4.9

講座評価

14

講座

(전) 엔코아 컨설팅

(전) 한국 오라클

AI 프리랜서 컨설턴트

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

カリキュラム

全体

164件 ∙ (25時間 8分)

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

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

受講レビュー

全体

47件

4.9

47件の受講レビュー

  • tofaye221846님의 프로필 이미지
    tofaye221846

    受講レビュー 2

    平均評価 5.0

    5

    100% 受講後に作成

    Nội dung chắc chắn và nó hoàn toàn phù hợp với tôi. Vì tôi phải xử lý mọi thứ bằng RAW SQL nên tốt hơn là không cần phải xử lý ORM. Trong khi nghe bài giảng, tôi phải mất khá nhiều thời gian để tạo từng điểm cuối mà tôi thực sự sẽ sử dụng. Cảm ơn người hướng dẫn. Để biết thông tin của bạn, những người sử dụng công cụ quản lý gói Windows chẳng hạn như tin sốt dẻo được đóng gói với phiên bản redis 7.4.1 mới nhất, vì vậy bạn có thể cài đặt nó trong một dòng mà không cần cài đặt WSL phức tạp. Không cần phải cài đặt phiên bản trước của phạm vi 3 điểm. https://github.com/redis-windows/redis-windows Tôi hy vọng điều này sẽ hữu ích cho những người tham gia bài giảng.

    • dooleyz3525
      知識共有者

      Ồ, cảm ơn bạn đã đánh giá dài. Cảm ơn bạn đã cung cấp thông tin hữu ích về Windows Redis.

  • linsay0703576님의 프로필 이미지
    linsay0703576

    受講レビュー 14

    平均評価 4.9

    修正済み

    5

    87% 受講後に作成

    Kafka là một khóa học rất hữu ích, tôi đã không ngần ngại lựa chọn. Tôi đã không sai khi lựa chọn. Không chỉ tập trung vào một framework là Fast API mà còn bổ sung thêm nhiều khái niệm và yếu tố cần thiết cho phát triển web, tôi có thể học được toàn bộ về web. Mặc dù hiện tại Django vẫn đang được sử dụng nhiều hơn nhưng đây là lựa chọn tuyệt vời cho tương lai và tôi hy vọng rằng khi thầy có khóa học về máy học - học sâu, một khóa học mà thầy thực sự giỏi, sẽ có sự kết hợp tuyệt vời. Tôi sẽ chờ đợi. Cảm ơn thầy.

    • leejken5305874님의 프로필 이미지
      leejken5305874

      受講レビュー 13

      平均評価 4.2

      5

      27% 受講後に作成

      Thật thú vị và tôi thích những câu hỏi được trả lời nhanh chóng. Tôi dự định học tất cả các bài giảng khác.

      • tiaz0128님의 프로필 이미지
        tiaz0128

        受講レビュー 7

        平均評価 5.0

        5

        21% 受講後に作成

        Thật tuyệt vời vì bạn có thể nhanh chóng sắp xếp nhiều thông tin. Tôi đã nghiên cứu FastAPI trên các nền tảng khác nhau và đọc sách, nhưng đây là cách dễ hiểu nhất và tôi có thể học nó một cách chính xác. Tôi hơi lo lắng vì có quá nhiều mã hóa trực tiếp. Nó không thể 'nhàm chán sao?' Tuy nhiên, nó dễ hiểu hơn vì bạn đã giải thích nó bằng cách mã hóa lại nhanh chóng logic mà bạn đã chuẩn bị. Ở bài đánh giá trước bạn nói có vấn đề nhỏ về micro nhưng đã được cải tiến nên không quá bất tiện. Hơi thất vọng một chút khi thiếu ORM. Tôi thực sự muốn biết suy nghĩ của bạn về ORM và cách sử dụng nó. Tôi hy vọng được xem bài giảng phụ trợ chuyên sâu tiếp theo!

        • dooleyz3525
          知識共有者

          Ồ, cảm ơn bạn đã đánh giá tuyệt vời. Hơn nữa, cảm ơn bạn đã dành thời gian để viết bài đánh giá dài này. Có những điều cực kỳ thích và không thích khi nói đến ORM, vì vậy tôi thận trọng với quan điểm cá nhân của mình. Tôi sẽ đề cập ngắn gọn về điều này trong bài giảng, nhưng nếu bạn có một số kinh nghiệm về DB, tôi nghĩ có nên sử dụng ORM hay không là lựa chọn cá nhân. Tuy nhiên, nếu bạn có ít kinh nghiệm về DB, tôi nghĩ việc sử dụng SQL trực tiếp thay vì ORM là hoàn toàn cần thiết. Nếu bạn muốn biết thêm ý kiến ​​cá nhân của tôi, vui lòng đăng câu hỏi của bạn trong mục Hỏi đáp và tôi sẽ cung cấp cho bạn câu trả lời bổ sung. Cảm ơn

      • hol13199273님의 프로필 이미지
        hol13199273

        受講レビュー 9

        平均評価 5.0

        修正済み

        5

        100% 受講後に作成

        Tôi cảm nhận được rằng bạn đã rất chú tâm đến tài liệu bài giảng và cấu trúc khóa học. Tôi chỉ học và sử dụng java và spring thôi, nhưng chỉ cần nhanh chóng xem qua cú pháp cơ bản của python rồi học khóa này thì vẫn có thể nghe hiểu được mà không gặp vấn đề gì. Tôi cũng khuyên các bạn khác nên học!

        ¥9,214

        dooleyz3525の他の講座

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

        似ている講座

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