• ベストアンサー

ポケモンGoでもAPI?

お世話になります。 API(Application Program Interface)の意味が解りません。 ネットで検索してもぼんやりとした解説にしか思えずハラ落ちしておりません。 何となく「システム間の連携についての決め事」のように感じるのですが 想像の域を出ておりません。 掲題の通り、スマホゲームの記事にも当たり前のように APIという用語が使われており、理解できていないことに 危機感を覚えております。 私のような素人にでも解るようなご説明をいただけると幸いです。 宜しくお願い申し上げます。

質問者が選んだベストアンサー

  • ベストアンサー
  • okgoo3
  • ベストアンサー率74% (20/27)
回答No.2

何かの機能を提供する事。 天気情報を提供する。 とあるユーザーの友達リストを提供する。 とあるユーザーの過去の投稿リストを提供する。 何かを提供するためには、対象を絞ったりするために必要な入力形式を決めておく必要がある。 経度と緯度を受け取れば、その地点の天気情報を提供する。 ユーザー名とパスワードを受け取れば、そのユーザーの友達リストを提供する。 出品物の ID を受け取れば、その出品物に対する入札状況を提供する。 何かを提供するためには、それをどんな形式で出力するか決めておく必要がある。 経度と緯度を受け取れば、その移転の天気情報を、〇〇のフォーマットで提供する。 ユーザー名とパスワードを受け取れば、そのユーザーの友達リスト〇〇のフォーマットでを提供する。 出品物の ID を受け取れば、その出品物に対する入札状況を〇〇のフォーマットで提供する。 提供する機能、処理するために必要な入力値、出力形式 という取り決めをして仕様とする。 利用したい側はこの仕様を見て使い方を理解する。 とある地点の天気情報を知りたい場合は、天気情報 API の URL に経度と緯度の値を渡せば、〇〇形式で天気情報を受け取ることができる。 SNS のクライアントを自作するため、利用者自身の友達リストを表示するためには、その API の URL に利用者自身のユーザー名とパスワードを渡せば、利用者自身の友達リストを〇〇形式で受け取ることができる。 ネットオークションで買いたい品物の入札経過を観察するためには、オークション API の URL に出品物の ID を渡せば、〇〇形式で入札状況を受け取ることができる。

retweet
質問者

お礼

ご回答ありがとうございます。 詳しい解説に理解が深まりました。 どなたかが解説されておりましたが、 関数のような機能と理解しました。 重ねて御礼申し上げます。

その他の回答 (3)

  • cwdecoder
  • ベストアンサー率19% (197/993)
回答No.4

プログラミングをしない人ならAPIを利用することはないと思います。 例えばパソコンのOS、Windowsの場合Windows API(32ビット時代はWin32 APIと呼ばれていました)というものが提供されていて、 あなたが組んでいるプログラムから、Windows にあらかじめ用意されている機能を呼び出すことができます。 例えば直径や色、座標を指定して画面上に円を描くとか、直線を引くとか、音を鳴らすということも、APIを通じて行うことができます。このような基本的な機能はWindowsが提供してくれるのです。 これを利用すれば、エクセルで音楽ファイルを再生したり、シューティングゲームを作ることも可能となります。

retweet
質問者

お礼

ご回答ありがとうございます。 少し私には難しすぎて理解が追いつきませんでした。。。

  • noranuko
  • ベストアンサー率46% (620/1332)
回答No.3

Excelの例でいうなら、「関数」がある意味APIです。 例えば、SUMは =SUM(数値1,数値2,…) ってやると、数値1~..を足した値を表示してくれますよね? こういった「機能」を「プログラムから利用しやすい形で」提供してくれるのが「API」です。 >何となく「システム間の連携についての決め事」のように感じるのですが イメージとしては正しいです。 「決めごとに従って、別のシステム(やモジュール)のAPIにデータを渡すと、そのシステムで処理されて、その結果が返ってくる」 ということです。 このAPIはいろいろな種類がありますが、"スマホゲームのAPI"の場合一般にWeb APIになります。 どういうものかというとAPIの動きをするWebサイトが作ってあって、 そのWebサイトに対してhttpプロトコルでPOST等でパラメータを渡してアクセスすると、サイトで処理された結果がテキスト(JSONやXMLなど、プログラムで利用しやすい形式)で返ってくる、というものです。 例えば上記SUM関数と同様のものだと http://hogehoge.co.jp/sumというURLに "1,2,3,4,5" という足したい数値をカンマ区切りで表記した文字列をPOSTすると、 15という文字列が表示される というような仕組みです。 実際の例としてはYahoo の気象情報API(http://developer.yahoo.co.jp/webapi/map/openlocalplatform/v1/weather.html)で、 http://weather.olp.yahooapis.jp/v1/place?coordinates=139.732293,35.663613&appid=<あなたのアプリケーションID> こんなURLでブラウザからアクセスすると、東京都港区六本木付近(緯度:35.663613、経度:139.732293)の情報がXML形式のテキストで返ってきます。 XMLなので、が見るには向いていないですがプログラムで情報を解析してやれば、取得した情報を自分の書いたプログラムで利用することが可能になります。 まぁこういうのは実際に使ってみるほうがわかりやすいかもですね。

retweet
質問者

お礼

ご回答ありがとうございます。 詳しい解説に理解が深まりました。 重ねて御礼申し上げます。

  • Kaneyan-R
  • ベストアンサー率42% (1217/2846)
回答No.1

簡単に言えば「機能を他のプログラムに提供する」ということ。 例えば、Windowsで「ファイル選択ダイアログを開いて、ファイルを選択。そのファイルを開く」と云う動作を考えてみましょう。 これをプログラムするとなると、ファイルを読み込む動作以外に、ファイル選択ダイアログの外観を含めた動作を一から作らなければいけませんよね? ですが、Windowsが提供するAPIのコモンダイアログ等を利用すると、ファイル選択ダイアログの外観と動作はWindows標準のダイアログ(エクスプローラー)と同じになります。あとは、ダイアログを閉じたときの動作(開くを選択したのかキャンセルしたのか等)によって、どう処理するかを作れば良いわけです。 こんな感じで、特定の決まった動作(ファイル選択とか音楽や動画を再生するとか)をAPIを提供する別のプログラムに任せることで、プログラムの簡略化と操作方法の統一化が可能になるわけです。

retweet
質問者

お礼

ご回答ありがとうございます。 「機能を他のプログラムに提供する」ということですか……。 例えばの例が私には難しすぎて、恥ずかしながら理解できませんでした。 "Windowsが提供するAPIのコモンダイアログ等"……「はぁ?」 というのが正直なところです(ご丁寧に例示いただきながら申し訳ありません)。「コモンダイアログ」をググって、泥沼にハマってます。 ExcelやWordあたりのアプリケーション例で換言したご説明を いただけると幸いです。図々しい依頼で誠に恐縮ですが 何卒宜しくお願い申し上げます。

関連するQ&A

  • 心理学用語の解説本又は解説HP

     仕事に使うとか役立てるとかいうわけではないのですが、心理学について勉強したいと思っています。  独学で(趣味の域を越えない程度に)心理学を勉強したいと思っていますが、書店等で見る心理学の本は、難解すぎるか娯楽程度の心理テストで物足りないかのどちらかです。  どの本を読むにしても、わからない言葉が出てきて先に進みにくいので、心理学用語のわかりやすい説明の付いた用語集又は解説書のようなものがあれば、教えていただきたいです。  犯罪心理学か心理学全般についてのものがベストです。  専門家にとっては優れているといった物ではなく、素人にも理解できるような入門的なものが希望です。  ご存知の方、是非紹介してください。

  • ポケモンGOで捕まえやすくて強いポケモンが知りたい

    表題のとおりです。 レアポケモンはなかなかでないので…。 シャワーズも弱体化したとききました。

  • ポケモンGO

    ポケモンGOは課金する価値ありますか。教えていただけませんか、お願い致します。

  • ポケモンgo

    友達がポケモンgoでアップデートしたら データが初期化されたらしいです。 復旧方法がネットに出ていたので試したらしいのですが、サインアウトしても もう1度ポケモンgoを開いたらサインアウトしたはずのアカウントで開いてしまって、 アカウントを入れ直す画面にならないそうです。どうやったらちゃんとサインアウトしてもう1度アカウントを入れ直すことができるんでしょうか。

  • ポケモンGO

    ミュウとかいるんですか???

  • ポケモンGOについて

    ポケモンGOで特定のジムに自分のポケモンを置くと、なぜか自分のポケモンだけ倒されて帰ってきて、そのジムを見てみると自分のポケモンを置いてた時のメンツと新しく置かれた別のポケモンがいることが何度もあります。 まさかこれは意図的に自分のポケモンだけ何者かに追い出されている可能性はあるのでしょうか? ものすごい腹が立ちます。

  • ポケモンGO

    今も流行ってますか

  • ポケモンGO

    出先でポケモンGOを開いたら新しいポケモンが出現したりしますか? あと、近くにいるポケモンは新しいのに変わったりしますか?

  • ポケモンGo

    アナタハ、カイマスカ?

  • ポケモンGOについてですが。。。

    ポケモンGOが早速日本でも配信されたので入れたのですが、ポケモンGOでポケモン達が出る場所は固定されてるのでしょうか? それともユーザーごとにポケモンが出る場所がランダムなのでしょうか・・・? 例えば東京都内でピカチュウが出たとしたら、東京以外に住んでる人は東京まで行かないと、ピカチュウをゲットできない、という事なのでしょうか? 始めたばかりで分からない所だったので、ご回答をお願い致します。。。

専門家に質問してみよう