0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

APIについて調べてみた

Posted at

はじめに

こんにちは!SIerに入社して1年目の新人エンジニアです。日々の業務で当たり前のように使われている用語で「えっ、それって何?」と思ったものを調べて、自分なりにまとめていきます。

今回は「API」について調べてみました。

目次

APIって何の略?

まず、「API」は「Application Programming Interface」の略です。日本語では「アプリケーション・プログラミング・インターフェース」となります。

APIの基本概念

APIはソフトウェア同士がデータのやりとりするための窓口のようなものです。簡単に言うと、異なるシステムやプログラム同士が「会話」するための共通言語や仕組みを提供するものです。

APIがあることで、私たちプログラマは相手のシステムの内部構造を知らなくても、決められた方法で機能を利用できます。例えば、Googleマップの地図をアプリに表示したい場合、Googleマップの内部がどうなっているか知らなくても、GoogleマップのAPIを使えば簡単に実現できるんです。

APIをレストランに例えると

APIの概念を説明する時によく使われる例えが「レストラン」です。

APIをレストランに例えた図

  • 客(クライアント): システムを利用したい側
  • ウェイター(API): 注文(リクエスト)を受け取り、厨房に伝え、料理(レスポンス)を客に届ける役割
  • 料理人(サーバー): 実際に処理を行い、結果を返す側

客は「ハンバーグを1つください」と注文(リクエスト)し、ウェイターはそれを厨房に伝えます。料理人がハンバーグを作り、ウェイターを通じて客に届けられます(レスポンス)。

ここで重要なのは、客は料理人が具体的にどうやってハンバーグを作るのか(内部処理)を知る必要がないということ。メニュー(API仕様)さえ分かれば、注文して料理を味わうことが出来ます。

APIの種類

APIには大きく分けて3つのタイプがあります

Web API

インターネットを通じて異なるシステム間でデータをやり取りするAPI。HTTPリクエストを使用してサーバーと通信します。

ライブラリAPI/ランタイムAPI

プログラミング言語のライブラリやフレームワークが提供する機能を使うためのインターフェース。

例えば

  • Javaの標準ライブラリAPI
  • ReactやVue.jsといったJavaScriptフレームワークのAPI

ネイティブAPI

オペレーティングシステムが提供する機能を利用するためのインターフェース。

APIの実際の利用例

  1. SNSログイン: 「Facebookでログイン」ボタンは、FacebookのAPIを使って認証情報を取得
  2. 天気予報アプリ: 気象データを提供するAPIからデータを取得して表示
  3. 決済システム: クレジットカード処理をPayPalやStripeなどのAPIに任せる
  4. 地図サービス: GoogleマップのAPIを使って地図を表示

ビジネスシステムでも、在庫管理システムと会計システムの連携、顧客情報の共有などにAPIが使われています。

APIを使う利点

  1. 開発の効率化: APIを利用することで、自社で一から機能を開発する必要がなくなり、開発時間とコストを大幅に削減できる
  2. セキュリティレベルの向上: GoogleやFacebookなどの認証APIを利用すれば、高度なセキュリティを比較的容易に実現できる
  3. データの二次利用: API提供側が持つ膨大なデータを自社サービスで活用できる

まとめ

「API」という用語、最初は単なる技術用語の一つだと思っていましたが、調べてみるとシステム間の連携を実現する重要な概念であり、現代のソフトウェア開発の基盤となっていることが分かりました。レストランの例えで考えると、APIはウェイターのようにクライアントとサーバーの間で情報をやり取りする重要な役割を担っています。

参考資料

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?