無料マンガ・ラノベなど、豊富なラインナップで188万冊以上配信中!
◆人気のPythonWebフレームワークFastAPIを使いこなす!◆
PythonのWebフレームワーク「FastAPI」を使ったWebAPI開発を解説する書籍です。FastAPIはマイクロサービスやシングルページアプリケーションと相性がよく、モダンで豊富な機能と非同期処理による高いパフォーマンスで人気が高まっています。本書は、ユニットテスト、運用までWebAPI開発の流れに沿って一通り解説します。さらに、Pydantic、SQLAlchemy、asyncioの各ライブラリについてもより深く説明します。
■目次
第1章 Python WebフレームワークFastAPI入門
・1.1 本章の概要
・1.2 Python WebフレームワークFastAPIの特徴
・1.3 初めてのFastAPIアプリケーション
・1.4 FastAPIを支える2つのライブラリ
第2章 エンドポイントとリクエストパラメータの定義
・2.1 本章の概要
・2.2 型ヒントを活用したFastAPIのスキーマ定義
・2.3 リクエストパラメータの利用
・2.4 FastAPIが持つ認証関連の機能
・2.5 型ヒントから自動生成されるAPIドキュメント
第3章 Pydanticを使ったリクエストデータ、レスポンスデータの定義
・3.1 本章の概要
・3.2 データバリデーションライブラリPydanticの概要
・3.3 FastAPIにおけるPydanticの活用
・3.4 Pydanticの挙動のカスタマイズ
・3.5 さまざまなデータ構造への対応
第4章 イベントループと非同期I/Oを使った非同期処理
・4.1 本章の概要
・4.2 同期処理と非同期処理の違い
・4.3 非同期処理の主な実現方法
・4.4 非同期I/OのメリットをFastAPIで体験
・4.5 非同期プログラミング入門
・4.6 FastAPIが準拠する非同期Webインタフェース仕様ASGI
第5章 FastAPIの豊富な機能
・5.1 本章の概要
・5.2 多様なリクエスト、レスポンス形式への対応
・5.3 FastAPIが持つWebフレームワークとしての機能
・5.4 FastAPI固有の便利な機能
第6章 データベース連携
・6.1 本章の概要
・6.2 SQLAlchemyの概要
・6.3 SQLAlchemyの基本的な使い方
・6.4 FastAPIでのSQLAlchemyの利用
・6.5 Mapped Classを使ったテーブル定義
・6.6 SQL文の構築と実行
・6.7 Alembicを使ったデータベースのスキーマ管理
第7章 Web APIの開発
・7.1 本章の概要
・7.2 開発するWeb APIの概要
・7.3 プロジェクト開発環境の構築
・7.4 アプリケーション全体に関わる共通処理の実装
・7.5 エンドポイントの実装
・7.6 データベースの作成
・7.7 データベース連携の実装
・7.8 ビジネスロジックの実装
第8章 Web APIへの機能追加
・8.1 本章の概要
・8.2 継続的な開発
・8.3 パスパラメータのコンテキスト変数へのバインド
・8.4 ロングランオペレーション
・8.5 ページングとフィルタリング
・8.6 Todoの一覧取得時にSubTaskも取得する
第9章 ユニットテスト
・9.1 本章の概要
・9.2 テストフレームワークpytestの概要
・9.3 FastAPIアプリケーションのテスト
・9.4 テスト用データベースの利用
・9.5 データベースを利用するテスト
第10章 クラウド環境へのデプロイ
・10.1 本章の概要
・10.2 Googleが提供するクラウド環境Google Cloud
・10.3 Cloud Runを使ったWebアプリケーションの公開
・10.4 Cloud SQLのセットアップ
・10.5 Cloud RunからCloud SQLへの接続
■著者プロフィール
陶山嶺:大分県出身。広島大学大学院情報工学専攻修士課程修了。学生時代にPythonと出会い、言語・コミュニティの持つ思想や雰囲気に惹かれる。PyCon JP 2015へ一般参加したことをきっかけにPyCon JP 2016からはスタッフやスピーカーとしても参加している。就職を機に上京していたが、現在は瀬戸内海に浮かぶ広島県尾道市の向島でフルリモートワークを実践中。
※アプリの閲覧環境は最新バージョンのものです。
※アプリの閲覧環境は最新バージョンのものです。