アプリケーションプログラムインターフェイスとは
多くの場合、 アプリケーションプログラミングインターフェースまたはシンプルAPIと呼ばれます。アプリケーションプログラムインターフェースは、コンピュータープログラムが互いに直接通信できるようにするプログラミング命令と標準の集まりです。 多くのソフトウェア会社はAPIを公開し、開発者がサービスを活用したアプリケーションを作成できるようにします。 完璧な例は、開発者がWindowsオペレーティングシステム用のゲーム、マルチメディア機能、およびアプリケーションを作成できるようにするAPIのセットであるMicrosoftのDirectXです。
アプリケーションプログラムインターフェイスは、ユーザーインターフェイスではなく、ソフトウェアからソフトウェアへのインターフェイスです。 実際、ユーザーの知識や介入なしにプログラムが互いに通信できるようにします。 たとえば、クレジットカードを使用してオンラインでコンサートチケットを購入すると、WebサイトはAPIを使用して、カードデータを有効性を確認するリモートアプリケーションに送信します。 支払いが確認されると、アプリケーションはWebサイトに応答し、チケットを発行することを許可します。
通常、最速の実行を提供するように設計されたアプリケーションプログラムインターフェイスには、プロシージャ、関数、変数、およびデータ構造のセットが含まれています。 完全なAPIは、多くの場合、開発者がその機能と下位の抽象化レベルとの関係を知る必要がないようにする抽象化レイヤーを提供するものとして定義されます。 これにより、プログラマーは、必要なコードを壊すことなく、API内の機能を強化または再設計できます。
アプリケーションプログラムインターフェイスは、SaaS(Software-as-a-Service)と非常によく似ています。 これは主に、プログラマがアプリケーションを記述するたびにゼロから始める必要がないためです。 すべてを処理するように設計された1つのコアプログラムをスクリプト化するのではなく、同じプログラムが特定の責任を、ジョブをより良く実行できる他のアプリケーションに外注できます。 これにより、APIはWebサイトやさまざまなWebアプリケーションとの統合に非常に役立ちます。
アプリケーションプログラムインターフェイスは、Web 2.0とソーシャルネットワーキング現象の不可欠な部分になりました。 いくつかの人気のあるコミュニティは、オープンアーキテクチャでコンテンツを共有するためにそれを使用しています。 ユーザーは、オープンAPIを使用してコミュニティに新しい機能を提供し、コメント、写真、ビデオ、およびあらゆる種類の情報を外部アプリケーションと共有できます。 この共有を可能にするAPIの2つの古典的な例は、Facebookアプリケーションプラットフォームとオープンソーシャルプラットフォームです。
アプリケーションプログラムインターフェイスは、Amazon®、eBay®、Google™など、いくつかの有名企業によって提供されています。 正確に開発され、正しく使用されると、これらはサービスを提供する会社とそのユーザーの両方に利益をもたらします。 おそらく、APIの最大の欠点は、提供するサービスに依存していることです。 たとえば、Google Maps™が廃止された場合、そのアプリケーションプログラムインターフェイスは本質的に役に立たなくなります。