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?

More than 3 years have passed since last update.

「APIってなんだ?JSONってなに?」を初学者にわかりやすくまとめた

Posted at

Web系企業でインターンをしていました。
実務で使われている技術と初学者が作るポートフォリオでは、当然ながら別物です。
そこで今回、実務でよく使われているAPIとJSONについてまとめました。
これからエンジニアに転職しようとする人は絶対に知っておいたほうがいい内容です。
この記事では、詳細な解説は省略しました。
なぜなら詳細に丁寧に解説した良質な記事はすでに存在するからです。
それらの記事は参考文献に載せておきます。

この記事の目的

プログラミング初学者が、API、JSONについて、どういうアプローチで考えれば理解しやすいかを目的としました。
そのため言葉足らずや、厳密には違うこともあるかもしれません。
認識間違いや、「こう考えた方が正確だよね」などありましたらご指摘いただけますと嬉しいです。

APIとは

API(アプリケーションプログラミングインターフェース)とは、どのアプリケーションでも共通で使える機能を提供する仕組みのことです。
API=関数と考えると覚えやすいです。Rubyでいうとメソッドですね。
APIを使うとは、メソッドを呼び出すことと考えると理解しやすいかもしれません。
このあたりの考え方は「WebAPIについての説明」という記事が大変わかりやすく、丁寧に解説されているのですべて読むことをおすすめします。

Web APIとは

Web APIとは、インターネット経由で別のサーバー上にあるプログラムを呼び出し、その結果を受け取ることができる仕組みのことです。
すでに存在する機能(プログラム)を外部から呼び出して、自分のアプリケーションで利用すると考えると理解しやすいかもしれません。
例えば、Googleマップを自分のアプリケーションで利用するなどが該当します。
一言でまとめると、別サーバーで用意している関数(機能)をhttp通信で利用することです。

JSONとは

JSON(JavaScript Object Notation)とは、データを表現する仕組みのことです。
こちらの記事は大変わかりやすくまとめてあります。
非エンジニアに贈る「具体例でさらっと学ぶJSON」

[{"id":1,"created_at":"2021-06-19T14:50:29.673Z","updated_at":"2021-06-19T14:50:29.673Z","name":"kazu"}]
# カンマ(,)区切りで、key: valueの関係でデータを表現しています。

example = [
 {
  "id":1,          #=>数値(number)
  "name":"kazu"    #=>文字列値(string)
  "age": null      #=>ヌル値(null)
  "children": true #=>真偽値(boolean)
 }
]
# このようにインデントをつけて表現することもできます。
# 上記はvalue(値)の例です。この他に配列値([])やオブジェクト値({})を持つことができます。

JSONの使い方

連想配列(オブジェクト形式)の場合、変数名.keyでvalueを取得できる。
配列値の場合は、変数名.key[0]など、配列のindex番号を指定することでvalueを取得できる。

example = [
 {
  "id":1,          #=>数値(number)
  "name":"kazu"    #=>文字列値(string)
  "age": null      #=>ヌル値(null)
  "children": true #=>真偽値(boolean)
  "array": [1, "foo", "bar", "baz"]
 }
]
example.id       #=>1
example.name     #=>"kazu"
example.array[1] #=>"foo"

まとめ

  • APIとは、どのアプリケーションでも共通で使える機能を提供する仕組みのこと。
  • Web APIとは、インターネット経由で別のサーバー上にあるプログラムを呼び出し、その結果を受け取ることができる仕組みのこと。
  • JSON(JavaScript Object Notation)とは、データを表現する仕組みのこと。

参考文献

WebAPIについての説明
非エンジニアに贈る「具体例でさらっと学ぶJSON」

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?