読者の皆さんは耳にしたことがあると思いますが、最近世間ではAPI(Application Program Interface)の公開が相次いでいます。SNSの機能のうちいくつかは、このAPIとの連携が重要です。
まず、APIの公開について簡単に説明します。著者はAPIの公開というものは一時の流行ではなく、これこそがインターネットの本当の姿なのではないかと思えるくらいに大切なものだと感じています。API・APIの公開という言葉をよく耳にしていながらも気にしていた方は、よい機会ですので飛ばさずに読んでみてください。
API公開以前のインターネット上のサービスは、サービスの利用者を「人間」に限定していたといえます(注1)。例えばGoogleは検索サービスを提供していますが、これは「誰か(人間)がGoogleのWebサイトにアクセスしてフォームに検索キーワードを入力し、その結果を画面(Webブラウザ)を通して見る」ということを想定してつくられています。
APIの公開というのは、このサービスの利用者を「人間」から「機械(PCやサーバ)」に拡張したものです。「機械」というのは「プログラム」と言い換えてしまったほうがわかりやすいかもしれません。APIの公開を考える上で大切なことは「人間」が使うサービスから「プログラム」が使うサービスへ進化したということだけです。
※注1:
テクニックを使えばこれらのサービスをプログラムから利用することも可能ですが、少なくともサービスの提供者は利用者を「人間」と想定しています。
しかしこれではまだイメージがつかみづらいと思いますので、簡単な例を見ながらもう少し説明しましょう。
皆さんが様々なWebサイトを閲覧している時に、Googleの検索フォームを貼り付けたページを見かけることがあると思います。また同様に、Amazonの検索フォームを貼り付けたページも見かけることもあることでしょう(図1)。これら検索フォームはそのWebサイトを訪れた人へのサービス、いわば「人間」が利用することを目的としているサービスです。

図1:検索エンジンへの入力フォームをサイトに貼り付けている例 (画像をクリックすると別ウィンドウに拡大図を表示します)
検索結果はGoogleやAmazonのWebサイトで表示されます。

図2:GoogleやAmazonでの検索イメージ (画像をクリックすると別ウィンドウに拡大図を表示します)
ここで少し考えてみてください。同じWebページに検索のフォームがあるのに、GoogleとAmazonを同時に検索することができないのは不便だと思いませんか。例えば「PHP」に関するWebサイトと書籍を両方調べたい場合、このままではそれぞれ別々に検索しなければなりません。これを1回の検索で表示することを考えてみましょう。図2ではGoogleやAmazonに対して「人間」が検索という操作を行っているのですが、図3ではそれを「機械」が行っています。

図3:APIによるGoogleとAmazonの同時検索
このように各社の提供する様々なサービス(機能)を相互に連携させてリミックスして新しい便利な機能を作り上げることがAPIの公開の目指している世界です。またこれらAPIの連携は「マッシュアップ」とも呼ばれています。
|