web-dev-qa-db-ja.com

APIの正確な意味は何ですか?

私はプログラミング言語でAPIの定義を探しましたが、それでも理解が難しいと感じています。

誰もが簡単な素人の言葉で私に助言することができます:

  1. APIとは
  2. 使い方は?
  3. いつどこで使用されますか。
152
Derek

検索にはウィキペディアを含める必要があります。これは、Application Programming Interface などのプログラミング概念/用語に対して驚くほど優れています

APIとは何ですか?

アプリケーションプログラミングインタフェース(API)は、ソフトウェアプログラムが互いに通信するために従うことができる規則( 'code')と仕様の特別なセットです。ユーザインタフェースが人間とコンピュータとの間の対話を容易にするのと同様に、それは異なるソフトウェアプログラム間のインタフェースとして働き、それらの対話を容易にする。

使い方は?

同じ方法で、一連の規則が使用されます。

いつ、どこで使用されますか?

当然、レルムとAPIに依存します。これらを検討してください。

  1. x86(IA-32)命令セット (とても便利です;-)
  2. A BIOS割り込み呼び出し
  3. OpenGL Cライブラリとして公開されることが多い
  4. コアWindowsシステムコール: WinAPI
  5. のクラスとメソッド Rubyのコアライブラリ
  6. ブラウザによってJavaScriptに公開されている Document Object Model
  7. Webサービス 、などで提供されるもの FacebookのGraph API
  8. JavaのJNI のようなプロトコルの実装

ハッピーコーディング.

122
user166390

APIは、あなたが他の誰かにコードをアクセスさせる、または他の誰かのコードがあなたのコードにアクセスするためのインターフェースです。事実上、パブリックメソッドとプロパティ。

48
Klee

1)APIとは何ですか?

APIは契約です。特定の方法で求められたときに、記述されたサービスを実行するという約束。

2)使い方は?

契約に規定されている規則に従って。 APIの重要な点は、その使用方法を定義することです。

3)いつ、どこで使われていますか?

単独ではできないことを達成するために2つ以上の別々のシステムが連携して動作する必要がある場合に使用されます。

43
Agent_L

まあ、すべての答えに加えて、私はちょうど例を追加しています。

他の人がAPI stands for Application Programming Interfaceと言ったsoftwares can interact with each other。人間のやり取りではありません。

使用されている場所

例として、あなたはあなたのクレジットカードを通してオンラインで商品を購入しています。クレジットカードの詳細を入力して、続行ボタンを押します。それはあなたの情報が正しいかどうかあなたに教えてくれるでしょう。これらの結果を提供するために、背景にはたくさんのことがあります。

アプリケーションはあなたの情報を検証して結果をあなたのアプリケーションに送り返すリモートアプリケーションにあなたのクレジットカードの詳細を送ります。このシナリオではAPIが使用されています。

APIが本当に理解できない初心者に役立つことを願っています。

他の例

天気予報アプリケーション

APIなし - 天気アプリケーションは、weather.comサイトを開き、人間が行うように詳細を読む必要があります。

With API - Weatherアプリケーションはweather.comにメッセージを送り、結果を受け取りそれを表示します。

SOURCEさまざまなオンラインリソース

39
Gops AB
  1. aPI(Application Programming Interface)は、基盤となるオペレーティングシステム、またはコンピュータ上で実行されている別のプログラムやサービスとやり取りするための一連の定義済み関数およびメソッドです。

  2. 通常、ソフトウェアでライブラリへの参照を確立するか、DLLから関数をインポートすることによって使用されます。

  3. プログラムの中で明示的に呼び出されたり、コンパイラによって暗黙的に呼び出されたりして、ほとんどすべてのソフトウェアで何らかの形で使用されます。

15
Mark Hall

APIは、アプリケーションプログラミングインターフェースを表し、すなわちAPIは、アプリケーションが特定のシステム/アプリケーション/ライブラリなどと対話するための方法である。

たとえば、OS(WinAPI)用のAPI、他のアプリケーション(データベースなど)用、および特定のライブラリ(画像処理用など)用のAPIなどがあります。

APIは通常、クライアントアプリケーションが使用できる形式で開発されています。 C/C++アプリケーションの場合は、セットヘッダーファイルと動的/静的ライブラリです。 Javaの場合 - jarのセット。等々。

10
pupssman

それは互いに相互作用するソフトウェアコンポーネントのセットです。アプリケーション、オペレーティングシステム、その他のものを作成するための関数、変数、およびオブジェクトクラスのセットを提供します。

7
Meghna Sreedhar

素人の言葉で言うと、私はAPIは異なる言語を話す2人の間の翻訳者のようなものだといつも言っていました。ソフトウェアでは、2つの異なる種類のソフトウェアが通信できるように、API(またはトランスレータ)を使用してデータを消費または配布できます。優れたソフトウェアには、セキュリティとデータのクリーンさに関する規則とプロトコルに従う強力なトランスレータ(API)があります。

私は「マーケティング担当者であり、コーダーではありません。これだけでは完全ではないかもしれませんが、約10年間表現しようとしたのは...」.

6
Colleen

APIは、プログラマーが特定のOSまたは他のソフトウェア用のソフトウェアを構築するときに使用できる一連のコマンド、機能、およびプロトコルです。 APIを使用すると、プログラマは、定義済みの関数を最初から作成するのではなく、オペレーティングシステムと対話することができます。 Windows、Unix、およびMac OSなどのすべてのコンピュータオペレーティングシステム、ならびにJavaなどの言語は、プログラマにアプリケーションプログラムインターフェースを提供する。

出典

5

この状況を考えてください。

マークとリサは密かにカップルです、そして、年齢差のために、彼らは一緒にいることを許されません。誰も見ていないとき、マークとリサは毎晩会います。彼らは時が来たときにどのようにコミュニケートするかについての彼ら自身の規則のセットを確立しました。彼は彼女の庭に立ち、彼女の窓に小さな岩を投げます。 Lisaは、それが時間であることを知っていて、ウィンドウから手を振ってそれを開いてMarkが登ることができるようにして対応します。その岩は他への最初の要求です。もう一つの最後の波は、基本的に "Welcome in!"を意味するウィンドウを開きます。

APIはほとんど人間の言語に似ていますがコンピュータ用です。

4
xZero

APIは、あるソフトウェアがソースレベルで別のソフトウェアと通信するためのインタフェースを定義します。 1つのソフトウェア(通常は上位レベルの部分)が別のソフトウェア(通常は下位レベルの部分)から呼び出すことができる、標準的なインタフェースのセット(通常は機能)を提供することによって抽象化を提供します。

たとえば、APIは、テキストを描画するために必要なすべてを提供する一連の関数を介して、画面上にテキストを描画するという概念を抽象化します。 APIは単にインターフェースを定義するだけです。実際にAPIを提供するソフトウェアは、APIの実装として知られています。

APIを「契約」と呼ぶのが一般的です。 APIは双方向の合意ではないため、これは少なくとも用語の法的な意味では正しくありません。 APIユーザ(一般に、より高レベルのソフトウェア)は、APIおよびその実装への入力がゼロである。 APIをそのまま使用することも、まったく使用しないこともできます。使用するかそのままにしてください。

実際のAPIの例は、C標準によって定義され、標準Cライブラリによって実装されるインタフェースです。このAPIは、メモリ管理や文字列操作ルーチンなど、基本的かつ不可欠な機能のファミリを定義します。

2
Koray Tugay

私の個人的な経験 どのようにしてさまざまな種類のAPIを知るようになったか APIの理解に役立つかもしれません。プログラミングを学ぶとき、私はこの抽象化を理解するのに最初に同じ困難を抱えていました。ウィキペディアの記事では私を助けられませんでした。しかし、APIの具体的な例を経験することで、抽象化を理解しやすくなります。

これが助けになるかどうか私は聞くのを心配するでしょう。

1
Robin Wieruch

あなたがゲームを開発していて、それをプレイする前にあなたのゲームユーザーが自分のfacebookプロフィールにログインして(あなたのプロフィール情報を入手したい)としましょう。ここにAPIがあります。Facebookにはすでにそれを実行するためのプログラム(API)が記述されています。ゲームアプリケーションでこれらのプログラムを使用するだけで済みます。Facebook-APIを使用すると、アプリケーションでサービスを使用できます。とAPIの詳細な外観... http://money.howstuffworks.com/business-communications/how-to-leverage-an-api-for-conferencing1.htm

1
Amit chaudhary

アプリケーションプログラムインタフェース(API)は、ソフトウェアアプリケーションを構築するための一連のルーチン、プロトコル、およびツールです。 APIは、ソフトウェアコンポーネントがどのように対話するべきかを指定し、グラフィカルユーザインターフェース(GUI)コンポーネントをプログラミングするときにAPIが使用される。優れたAPIは、すべての構成要素を提供することによってプログラムの開発を容易にします。プログラマはブロックをまとめます。

ソース: http://www.webopedia.com/TERM/A/API.html