Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
世界のアオキ (Akihiro Aoki)

ChatGPTを始めとする『LLM(大規模言語モデル)』が増えてきたことにより、

外部知識のアクセス先として、APIサーバーの需要が増えてきています。

機械学習やAIの分野で活躍してきたプログラム言語『Python』は、

LLMの普及により、これから日本でもますます需要、要望が高まってきます。

そんな現況を受けてこの講座では、

プログラミング完全初心者向けに『Python』の基礎から解説し、

『Python』でAPIサーバーを構築するためのフレームワークである、

『Fast API』の扱い方をできるだけわかりやすく解説しています。

わかりやすさ重視ということで、

できるだけイメージ図や表を使い、

説明過多になるよりも手を動かしてコードを書いてイメージできるように構成しておりますので、

Python初心者の方はもちろん、

FastAPIを始めて扱う方にもおすすめのコースとなっています。

■動作環境

Python 3.12.0

FastAPI  0.110.0

■扱っている事

Read more

ChatGPTを始めとする『LLM(大規模言語モデル)』が増えてきたことにより、

外部知識のアクセス先として、APIサーバーの需要が増えてきています。

機械学習やAIの分野で活躍してきたプログラム言語『Python』は、

LLMの普及により、これから日本でもますます需要、要望が高まってきます。

そんな現況を受けてこの講座では、

プログラミング完全初心者向けに『Python』の基礎から解説し、

『Python』でAPIサーバーを構築するためのフレームワークである、

『Fast API』の扱い方をできるだけわかりやすく解説しています。

わかりやすさ重視ということで、

できるだけイメージ図や表を使い、

説明過多になるよりも手を動かしてコードを書いてイメージできるように構成しておりますので、

Python初心者の方はもちろん、

FastAPIを始めて扱う方にもおすすめのコースとなっています。

■動作環境

Python 3.12.0

FastAPI  0.110.0

■扱っている事

Pythonパート・・venvを使った仮想環境/変数/関数/リスト/辞書型/モジュール/パッケージ/クラス/API通信/関数あれこれ/型ヒント/非同期処理 など

FastAPIパート・・環境構築/ルーティング/Pydantic/スキーマ/RestFul/ SQLAlchemy/SQLite/CRUD などなど。

おまけ・・GitHub

Enroll now

What's inside

Syllabus

紹介・環境構築

講座の内容を簡単に紹介しています。

Udemyで初めて講座受講される方向けに簡単な使い方や資料の場所などを解説しています。

講座で扱った資料・コード
Read more

Pythonの概要、用途、年表などをご紹介しています。

Pythonの開発環境(google colaboratory, venv, anaconda, コンテナ)についてそれぞれ解説しています。

macにPythonをインストールする方法を解説しています。(homebrew, pyenv, venv)

windowsにPythonをインストールする方法を解説しています。

venvを使って仮想環境を作る方法をご紹介します。

VisualStudioCodeでPythonを書くためにおすすめの拡張機能をご紹介しています。

初めてPythonを動かす方向けに書き方や実行方法を解説しています。

Pythonで変数を扱う方法を解説しています。

Pythonでリスト型(配列)を扱う方法を紹介しています。多次元配列についても解説しています。

Pythonの辞書型(連想配列) を扱う方法を解説しています。

Pythonの辞書型で多次元のパターンを扱う方法を解説しています。

リストに似ているけれど後から値を変更できないタプル型について解説しています。

Pythonで扱う演算子について簡単に紹介しています。

Pythonでif文を扱う方法を解説しています。

Pythonで条件分岐のためにif, elif, elseを扱う方法を解説しています。

Pythonで繰り返し処理を行うためのfor文について、回数指定のパターンとリスト全件表示のパターンで解説しています。

for文を組み合わせて多次元辞書型の変数を展開する方法を解説しています。

内包表記を使うことでfor文やif文を1行で書くことができるのでその方法を解説しています。

関数の考え方、必要な要素について解説しています。

Pythonのユーザー定義関数について、引数あり、なし、複数、戻り値のあり、なしのパターンでそれぞれサンプルコードを書いて動作確認しています。

Pythonにあらかじめ用意されているビルトイン関数について解説しています。

変数と関数を扱う際に知っておきたいスコープについて解説しています。

リスト、辞書、文字列などに扱えるメソッドについて解説しています。

このセクションで学んだ項目に関する理解度チェックになります。

正しいと思う選択肢を選んでください。

Pythonで別ファイルを読み込む際に使うモジュールという考え方について解説しています。

Pythonでモジュールを読み込む際のfrom句について解説しています。

pythonのモジュールを読み込む際の名前を変更するas句について解説しています。

Pythonにもともと組み込まれている標準モジュールについて解説しています。

Pythonでパッケージを作る方法や読み込む方法を解説しています。

Pythonのパッケージ管理ツールであるpipについて使い方やコマンドなどを解説しています。

pipを使って外部パッケージをインストールし、インポートして動かす方法を解説しています。

Pythonのクラスについての考え方やパッケージ、モジュールとの違いを解説しています。

Pythonでクラスを実体化(インスタンス化)して使う方法を解説しています。

Pythonでコンストラクタを使って、クラスを実体化する際に属性を設定する方法を解説しています。

クラスをインスタンス化しなくても扱えるスタティックメソッドについて解説しています。

親クラスの機能を引き継いで使うことのできる継承について解説しています。

関数やメソッドに機能を追加することのできるデコレータについて解説しています。

関数の引数にデフォルト値を設定する方法を解説しています。

関数に渡す引数にキーワードをつけることで順番を気にせず扱う事ができるのでその方法を解説しています。

関数に渡す引数の数が変わる場合に備えて、可変長引数の使い方について解説をしています。

Pythonスクリプト実行時のみ動作させる方法を解説しています。

Pythonで例外処理をする方法を解説しています。

APIの概要やメソッド、通信方法などについて解説しています。

実際にAPIサーバーに通信してJSON形式で取得し、辞書型で表示する流れを解説しています。

Pythonで型ヒントを扱う方法を解説しています。

Pythonで非同期処理を実行する方法を解説しています。

FastAPIの概要と事前準備まで解説しています。

講座収録の都合上Gitリポジトリを作成しています。初心者向け講座という事もありGitリポジトリは必須ではありません。

FastAPIとuvicornのインストール方法を解説しています。

簡単なコードを記述してサーバー起動し、ブラウザでドキュメントを表示する方法を解説しています。

ルーティングの内容や使うクラスについて解説しています。

APIRouterを使いルーティング情報をパッケージ化しつつルーティングの雛形を作る方法を解説しています。

Pydanticでスキーマを作成する方法を解説しています。

作成したスキーマを使ってレスポンスを設定し、ブラウザ上で確認する方法を解説しています。

Pydanticでスキーマモデルにバリデーションを設定する方法とその内容を解説しています。

POST通信でリクエストボディを送信し、レスポンスで表示確認する方法を解説しています。

スキーマモデル、リクエスト、レスポンスを設定できたので、requestsを使ってAPI通信し、レスポンス取得する方法を解説しています。

残りの3つのルート(詳細表示、更新、削除)の設定方法を解説しています。

データベースの概要と、今講座で扱うSQLAlchemyについて解説しています。

SQLAlchemyの機能を使ってデータベースと接続するコードを解説しています。

データベース内のテーブルの作り方と、データベースへ接続しテーブルを確認する方法を解説しています。

データベース関連のコードがFastAPIに記載があるのでその紹介と、実際にAPI通信する際にスキーマモデルを分けて作成する必要があるのでその内容を解説しています。

一覧表示、保存、詳細表示などで通信させたい内容が変わる場合を想定し、スキーマモデルを分離する方法を解説しています。

DBにデータ保存するためのCreate処理の解説をしています。

DBにデータ保存するためのCreate処理の関数の解説をしています。

ルーターファイルを編集し、データベースにデータ保存する方法を解説しています。

簡単なサンプルコードを用いて依存性注入の使い方を解説しています。

CRUD(Read)の一覧表示を取得する方法を解説しています。

id指定して詳細表示するためのコードを解説しています。

idを指定しデータベース内の情報を更新する方法を解説しています。

id指定してデータベース内の情報を削除する方法を解説しています。

gitを使ってfastapiパートのコードをダウンロードし実行できるようにする手順を解説しています。

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Covers Python fundamentals such as variables, functions, lists, dictionaries, and modules, providing a solid foundation for beginners
Explores FastAPI, a modern framework for building APIs, and its features like routing, Pydantic, schemas, and RESTful principles
Includes hands-on examples of API communication, allowing learners to interact with external services and understand data exchange
Introduces SQLAlchemy and SQLite for database interactions, covering CRUD operations and database schema design
Uses Python 3.12.0 and FastAPI 0.110.0, which may require learners to update their environments to match the course's specifications
Includes a section on Git and GitHub, which is helpful for version control and collaboration, but not strictly necessary for the core material

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Python と fastapi 超初心者向け入門

学習者によると、このコースはプログラミングやPython、FastAPIの完全初心者にとって非常に分かりやすいと評価されています。基礎から丁寧に解説されており、特に手を動かしながら学べる実践的な構成が良いとのことです。APIの基本概念やCRUD処理の実装など、モダンなAPIサーバーを構築するための第一歩として非常に役立つ内容だと多くの受講者が感じています。一方で、FastAPIでのデータベース連携部分については、既存知識がない場合は少し難しく感じる可能性も示唆されています。全体的には、初心者向けの導入として評判が良いコースです。
API開発の基本が学べる
"FastAPI の基本概念から、DB を使った CRUD 処理まで一通り学べました。"
"モダンな API サーバーを構築するための必要な要素が詰まっています。"
"Python の基本文法から丁寧に解説されている点が良かったです。"
"Git や GitHub の補足もあり、助かりました。"
コードを書きながら学べる体験が良い
"実際にコードを書きながら進めるので、理解が深まります。"
"API 通信や CRUD 処理の実装は非常に役立ちました。"
"簡単なAPI をすぐに構築できるようになりました。"
"ハンズオン形式で、すぐに手を動かせる点が良かったです。"
ゼロから丁寧に解説されており分かりやすい
"プログラミング完全初心者でも非常によく理解できます。"
"Pythonの基本からFastAPIまでとても分かりやすいです。"
"初心者にとってちょうど良いペースで進められました。"
"イラストや図解があり、イメージしやすかったです。"
データベース部分は既存知識が必要かも
"FastAPI のデータベース連携部分は少し駆け足に感じました。"
"SQL の知識がなくてもついていけるか不安な箇所がありました。"
"別途 DB について学ぶ必要があるかもしれません。"
"DB部分は初心者には少し難しいかもしれません。"

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in PythonからFastAPIまで【初心者向け講座】モダンなAPIサーバを構築してみよう【わかりやすさ重視】 with these activities:
Pythonの基本構文を復習する
コース開始前にPythonの基本的な構文を復習することで、よりスムーズにFastAPIの学習を進めることができます。
Browse courses on Python
Show steps
  • 変数、データ型、制御構造に関する資料を見直す
  • 簡単なPythonプログラムを書いて実行する
  • オンラインの練習問題やクイズを解く
Pythonスタートブックを読む
Pythonの入門書を読むことで、コースで扱うPythonの基礎知識を補強し、よりスムーズに学習を進めることができます。
Show steps
  • 書籍を購入または図書館で借りる
  • 書籍の目次を確認し、興味のある章から読み始める
  • サンプルコードを実際に実行してみる
オンラインのPython練習問題を解く
Pythonの練習問題を解くことで、コースで学ぶPythonの知識を定着させ、実践的なスキルを向上させることができます。
Show steps
  • オンラインのPython練習問題サイトを探す
  • 簡単な問題から順番に解いていく
  • 間違えた問題は解説を読んで理解する
Four other activities
Expand to see all activities and additional details
Show all seven activities
FastAPIの簡単なAPIを作成する
コースで学んだFastAPIの知識を使って、簡単なAPIを作成することで、実践的なスキルを向上させ、理解を深めることができます。
Show steps
  • 簡単なAPIの仕様を考える
  • FastAPIを使ってAPIを実装する
  • APIをテストする
FastAPI Webバックエンドフレームワークを読む
FastAPIの専門書を読むことで、コースで学んだ知識をより深く理解し、実践的なスキルを向上させることができます。
Show steps
  • 書籍を購入または図書館で借りる
  • 書籍の目次を確認し、興味のある章から読み始める
  • サンプルコードを実際に実行してみる
FastAPIのオープンソースプロジェクトに貢献する
FastAPIのオープンソースプロジェクトに貢献することで、実践的なスキルを向上させ、コミュニティとのつながりを深めることができます。
Show steps
  • FastAPIのGitHubリポジトリを探す
  • Issueを調べて、貢献できるものを見つける
  • コードを書いてPull Requestを送る
FastAPIの学習グループを主催する
他の人にFastAPIを教えることで、自分の理解を深め、コミュニケーション能力を向上させることができます。
Show steps
  • 学習グループのメンバーを募集する
  • 学習内容とスケジュールを決める
  • 定期的に学習グループを開催する

Career center

Learners who complete PythonからFastAPIまで【初心者向け講座】モダンなAPIサーバを構築してみよう【わかりやすさ重視】 will develop knowledge and skills that may be useful to these careers:
バックエンドエンジニア
バックエンドエンジニアは、ウェブサイトやアプリケーションのサーバーサイドのロジック、データベース、APIなどを担当します。このコースでは、プログラミング未経験者向けに『Python』の基礎から解説し、『Python』でAPIサーバーを構築するためのフレームワークである『Fast API』の扱い方を学べます。バックエンドエンジニアとしてAPIを構築する上で必要なPythonの基礎知識やFastAPIのルーティング、Pydantic、SQLAlchemyなどの知識を習得できますので、バックエンドエンジニアとしてのキャリアをスタートさせる上で役立ちます。
API開発者
API開発者は、アプリケーション同士が連携するためのインターフェースであるAPIを設計、開発、保守します。このコースでは、PythonとFastAPIを使用してモダンなAPIサーバーを構築する方法を学びます。コースでは、API通信、ルーティング、スキーマ定義、データベース連携など、API開発に必要なスキルを幅広くカバーしています。特に、FastAPIのCRUD操作に関する知識は、API開発者にとって非常に重要です。API開発者を目指す方は、このコースでAPI開発の基礎を固めることができます。
フルスタックエンジニア
フルスタックエンジニアは、フロントエンドとバックエンドの両方を担当するエンジニアです。このコースでは、Pythonの基礎からFastAPIを使ったAPIサーバー構築までを学ぶため、バックエンドのスキルを強化できます。フルスタックエンジニアとして、APIを自分で構築し、フロントエンドと連携させる能力は非常に価値があります。特に、このコースではAPI通信やデータベース連携についても学べるため、より実践的なスキルを身につけることができます。
機械学習エンジニア
機械学習エンジニアは、機械学習モデルの開発、実装、運用を担当します。コースの説明にもある通り、ChatGPTを始めとするLLM(大規模言語モデル)が増えてきたことにより、外部知識のアクセス先としてAPIサーバーの需要が増えてきています。Pythonの基礎とFastAPIの知識は、機械学習モデルをAPIとして公開する際に役立ちます。コースでは、API通信や非同期処理についても学ぶため、より効率的なAPIを開発することができます。機械学習エンジニアとして、APIを通じてモデルを公開するスキルは非常に重要です。
データエンジニア
データエンジニアは、データの収集、加工、保存、提供を担当します。特に近年のデータエンジニアはAPIを通じてデータを提供する機会が増えてきています。このコースで学ぶPythonとFastAPIの知識は、データパイプラインの一部としてAPIを構築する際に役立ちます。具体的には、データベースからデータを取得し、APIを通じて提供するようなシステムを構築できます。コースでは、SQLAlchemyを使ったデータベース連携についても学べるため、データエンジニアとしてのスキルを向上させることができます。
ソフトウェアエンジニア
ソフトウェアエンジニアは、ソフトウェアの設計、開発、テスト、デプロイを担当します。このコースでは、Pythonの基礎からFastAPIを使ったAPIサーバー構築までを学ぶため、ソフトウェア開発のスキルを向上できます。特に、APIサーバー構築の知識は、マイクロサービスアーキテクチャを採用する際に役立ちます。コースでは、ルーティング、スキーマ定義、データベース連携など、API開発に必要なスキルを幅広くカバーしています。ソフトウェアエンジニアとして、API開発スキルは必須です。
ウェブ開発者
ウェブ開発者は、ウェブサイトやウェブアプリケーションの開発を担当します。このコースでは、PythonとFastAPIを使ってAPIサーバーを構築する方法を学ぶため、ウェブアプリケーションのバックエンド開発スキルを向上できます。コースでは、ルーティング、Pydantic、SQLAlchemyなど、ウェブ開発に必要なスキルを幅広くカバーしています。ウェブ開発者として、API開発スキルは非常に重要です。 モダンなウェブ開発を行う上で、このコースで学べる内容は非常に役立ちます。
DevOpsエンジニア
DevOpsエンジニアは、開発と運用を連携させ、ソフトウェア開発ライフサイクル全体を効率化する役割を担います。APIサーバーの構築、デプロイ、監視を行う上で、PythonとFastAPIの知識は非常に役立ちます。例えば、APIサーバーの状態を監視するスクリプトをPythonで記述したり、FastAPIを使ってAPIを迅速にデプロイしたりすることができます。コースでは、GitHubの使い方も学べるため、CI/CDパイプラインの構築にも役立ちます。DevOpsエンジニアとして、APIに関する知識は非常に重要です。
システムエンジニア
システムエンジニアは、情報システムの設計、開発、運用、保守を担当します。API連携を必要とするシステムの開発において、PythonとFastAPIの知識は役立ちます。このコースでは、APIサーバーの構築方法を学ぶため、システム全体の設計に貢献できます。特に、データベース連携やAPI通信に関する知識は、システムエンジニアにとって非常に重要です。システムエンジニアとして、APIに関する知識を深めることで、より高度なシステム設計が可能になります。
テクニカルアーキテクト
テクニカルアーキテクトは、システムの全体像を設計し、技術的な意思決定を行う役割を担います。API戦略を策定し、マイクロサービスアーキテクチャを導入する際に、PythonとFastAPIの知識は役立つ可能性があります。このコースでは、APIサーバーの構築方法を学ぶため、より実践的なアーキテクチャ設計が可能になります。特に、ルーティングやスキーマ定義に関する知識は、API設計において重要です。テクニカルアーキテクトとして、APIに関する深い理解を持つことは、システムの成功に不可欠です。
組み込みエンジニア
組み込みエンジニアは、家電製品や産業機器などの組み込みシステムの開発を担当します。組み込みシステムがネットワークに接続され、APIを通じてデータ交換を行うケースが増えています。このコースで学ぶPythonとFastAPIの知識は、組み込みシステムと連携するAPIサーバーを構築する際に役立つ可能性があります。具体的には、組み込みシステムからデータを収集し、APIを通じてクラウドに送信するようなシステムを構築できます。組み込みエンジニアとして、APIに関する知識を持つことは、システムの可能性を広げる上で重要です。
品質保証エンジニア
品質保証エンジニアは、ソフトウェアやシステムの品質を保証するためのテストや検証を担当します。APIの品質をテストするために、Pythonで自動テストスクリプトを作成できます。このコースでは、Pythonの基礎を学ぶため、テスト自動化に必要なスキルを習得できます。また、API通信に関する知識は、APIのテストケースを作成する上で役立ちます。品質保証エンジニアとして、Pythonの知識を持つことは、テストの効率化に貢献します。
ITコンサルタント
ITコンサルタントは、企業のIT戦略を策定し、システム導入を支援します。API戦略を策定し、マイクロサービスアーキテクチャを導入する提案を行う際に、PythonとFastAPIによるAPI開発の知識は役立つ可能性があります。このコースでは、APIサーバーの構築方法を学ぶため、より具体的な提案が可能になります。 特に、ルーティングやスキーマ定義に関する知識は、API設計において重要です。ITコンサルタントとして、APIに関する知識を持つことは、顧客への価値提供に繋がります。
プロジェクトマネージャー
プロジェクトマネージャーは、プロジェクトの計画、実行、監視、制御を担当します。API開発プロジェクトを管理する上で、PythonとFastAPIの知識は役立つ可能性があります。このコースでは、APIサーバーの構築方法を学ぶため、プロジェクトの進捗状況をより正確に把握できます。特に、ルーティングやスキーマ定義に関する知識は、API開発の技術的な側面を理解する上で重要です。プロジェクトマネージャーとして、APIに関する知識を持つことは、プロジェクトの成功に貢献します。
テクニカルライター
テクニカルライターは、ソフトウェアやハードウェアに関する技術的なドキュメントを作成します。FastAPIを使ったAPI開発に関するドキュメントを作成する際に、PythonとFastAPIの知識は役立つ可能性があります。このコースでは、APIサーバーの構築方法を学ぶため、ドキュメントの内容をより深く理解できます。特に、ルーティングやスキーマ定義に関する知識は、APIドキュメントの正確性を高める上で重要です。テクニカルライターとして、APIに関する知識を持つことは、高品質なドキュメント作成に繋がります。

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in PythonからFastAPIまで【初心者向け講座】モダンなAPIサーバを構築してみよう【わかりやすさ重視】.
この本はFastAPIのより深い理解のために役立ちます。FastAPIの基本的な使い方から、より高度な機能まで、幅広く解説されています。このコースで扱う内容をさらに深く理解したい場合に最適です。特に、データベース連携やセキュリティに関する章は、コースの理解を深めるのに役立ちます。この本は、FastAPIを本格的に利用したい人にとって、非常に価値のある一冊です。
この本はPythonの入門書として最適です。プログラミングの経験がない人でも、Pythonの基礎をしっかりと学ぶことができます。このコースで扱うFastAPIの前提知識となるPythonの基本を理解するのに役立ちます。特に、変数、関数、クラスなどの概念を事前に理解しておくと、コースの理解が深まります。

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser