0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ポケモンで完全理解!RESTful APIの仕組みをピカチュウでやさしく学ぶ図解入門【GitHub APIやPokeAPIやAmazon API】

Last updated at Posted at 2025-05-16

⚡もしもポケモンセンターがRESTful APIで動いていたら?

🔍 逆引き目次(Qiita用)


🎯 RESTful APIとは?

**RESTful API(レストフルエーピーアイ)**とは、「Webのルールに従って、安全で簡単にデータをやり取りできる仕組み」です。

たとえば、ポケモンの情報をアプリで表示させるとき、RESTful APIを使えば「ピカチュウのデータちょうだい!」とお願いするだけで、ちゃんと整理されたデータが届きます。

🆚 RESTful API vs 直接データベース接続(JDBC)

ポケモン図鑑アプリを作るとしたら、「ピカチュウの情報を取得する」手段には主に2つあります:

  1. RESTful API 経由で取得する
  2. JDBCなどで直接データベースに接続する

それぞれの特徴を以下のように整理できます👇


🧭 比較表

項目 RESTful API 直接データベース接続(JDBCなど)
アクセス対象 サーバー側のAPI(抽象化されたインターフェース) データベース本体に直接接続
主な使用者 フロントエンド、外部サービス バックエンド、社内システム
例え(ポケモン) 「ジョーイさんにお願いして診てもらう」 「トレーナーが勝手にカルテ棚を見に行く」

💡 使い分けの目安

利用ケース 向いている方式
スマホやWebアプリからのアクセス ✅ RESTful API
社内でのデータ分析や大量データ処理 ✅ JDBC

🎮 RESTful APIのデータのやりとりをポケモンで例えると?


🧩 登場人物を置き換えてみよう

ポケモン世界 ITの世界
トレーナー あなた(スマホ・アプリ)
ジョーイさん API(データの仲介役)
ポケモンセンターのパソコン サーバー(情報がたくさん入っている)
図鑑や診断結果 レスポンス(返ってくるデータ)

🧪 例:ピカチュウの情報をアプリで見たいときの流れ


① トレーナーがジョーイさんにお願いする(リクエスト)

「ピカチュウの情報を見せてください!」

➡ ITでいうと、「GET /pokemon/pikachu」という命令をAPIに送ること。

GET https://pokeapi.co/api/v2/pokemon/pikachu

② ジョーイさんがパソコンで調べる(サーバーが処理)

ジョーイさんがポケモンセンターのパソコンで「ピカチュウ」を検索!

➡ サーバーがデータベースにアクセスして、ピカチュウの情報を見つける。


③ ジョーイさんがトレーナーに情報を渡す(レスポンス)

「はい、これがピカチュウの情報です!」

➡ JSON形式でアプリにデータが返ってきます。

{
  "id": 25,
  "name": "pikachu",
  "type": "electric"
}

アプリではこれを受け取って、画面に表示するだけ!


📦 全体のイメージ図(ストーリー)

👤 あなた(トレーナー)
   ↓ ①リクエスト(ピカチュウ情報ちょうだい!)
📡 API(ジョーイさん)
   ↓ ②データベースに確認
🧠 サーバー(ポケモンセンターのPC)
   ↓ ③ピカチュウの情報を見つけて返す
📡 API(ジョーイさん)
   ↓
👤 あなた(画面にピカチュウの情報が表示!)

🧠 ポイントまとめ

ステップ ポケモン例 IT用語
①お願いする 「ピカチュウ見せて!」 リクエスト
②調べる 図鑑を調べる サーバーが処理
③返してくれる 「これがピカチュウだよ」 レスポンス(JSON)

🔍 おまけ:アプリの中ではこんなふうに動いてる!

fetch("https://pokeapi.co/api/v2/pokemon/pikachu")
  .then(response => response.json())
  .then(data => {
    console.log("名前:" + data.name);
    console.log("タイプ:" + data.types[0].type.name);
  });

🎓 まとめ

RESTful APIは、

ジョーイさんみたいに、必要なポケモン情報を代わりに調べて持ってきてくれる便利な仕組み」です。

アプリはこの「API」を通じて、ピカチュウやフシギダネの情報をリアルタイムに表示しています!


「ピカチュウのタイプはエレクトリック!」という情報を簡単に取得できます。


🔧 RESTのルール(ポケモンで覚えよう)

やりたいこと HTTPメソッド URL例 意味
一覧を見る GET /pokemon 全ポケモンを取得
詳細を見る GET /pokemon/25 ピカチュウの情報
新しく登録 POST /pokemon ポケモンを新規追加
変更する PUT /pokemon/25 ピカチュウをライチュウに更新
消す DELETE /pokemon/25 ピカチュウを削除(涙)

✅ RESTful APIが使われている実際のサービス

1. 🔍 PokeAPI(https://pokeapi.co/)

  • ポケモンのあらゆる情報を取得可能
  • URLさえわかれば誰でも使える
  • 教材やアプリ開発にも人気

2. 🧑‍💻 GitHub API(https://api.github.com)

  • リポジトリの情報やプルリクを取得・作成できる
  • GET /users/{name}/repos などで使いやすい

3. 🛒 Amazon Product Advertising API

  • 商品情報・レビュー・価格を取得できる
  • アフィリエイトサイトや価格比較アプリで使用

以下は、該当の5項目を削除したうえで再構成した 🆚 RESTful API vs 直接データベース接続(JDBC) の比較表です。


✨ 最後にひとこと

RESTful APIは、「ポケモンの図鑑をインターネットで開ける魔法の道具」!

安全でシンプルにデータをやり取りできるので、アプリ開発の現場でも大活躍中です。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?