スポンサーリンク
最近、何やらAPIの時代が来ているそうな。
APIを使えばいろんなサービスがスピーディーかつ簡単につながり、今までにないものが生まれてくる、、、とか。
こういう話がよく聞かれますが、実際のところAPIって何?って思っている人もいるのではないでしょうか?(私含め)
ということで、自分なりに咀嚼したAPIの考え方についてまとめてみます。
(なお、ここでAPIと書いているものは、最近よく使われているWebAPIのことを指しています。)
Application Programming Interface の略です。
アプリケーション プログラミング インターフェイス。これだけ読んでもさっぱりわかりません。
私の理解では、アプリケーション同士でやり取りするための窓口 というものだと思います。
つまり、あるアプリケーションが、別のアプリケーションに対して処理(参照/更新など)を行う際に使う窓口(≒経路)ということです。
さらにAPIにはいくつか特徴があります。
あくまで私調べですが、APIは以下のような機能を持っています。
・インターネットを使ってhttp(s)でやり取りすること
・アプリケーションが処理しやすい形式であること
特に 「アプリケーションが」 という部分が非常に重要です。これはつまり、「機械でも処理できる」、つまり「人間が判断することなく」 理解できる形式ということです。
例を上げて説明します。例えば相手の名前を確認する時、人間同士であれば
「あなたの名前は何ですか?」 と聞くと 「私は◯◯です」と返って来ますよね。
この返事から名前を抽出する処理を機械的に行おうとする場合を考えてみましょう。
例えば"私は と です の間が名前" という方法が考え付くかもしれません。
しかし、中には「僕の名前は◯◯だよ」と返して来る人がいるかもしれません。
その場合は対処できなくなってしまいます。
そのため、多くのAPIでは機械でも処理しやすい形式(jsonやXML)で返事をするようになっています。
例えばjsonでは
{name: "◯◯"}
のように、タグ(上記例ではname)から必要な情報を取得することができます。
このように、APIでは機械的に処理しやすい形式で情報をやり取りするのが特徴です。
スポンサーリンク