APIとライブラリの違い

今回は前々からあいまいに理解していたAPIとライブラリの違いを説明していこうとおもいます。

言葉の定義とそれぞれのイメージ図

APIとは(コトバンク)

アプリケーション・プログラミング・インターフェース(Application Programming Interface)の略。OS(基本ソフト)やアプリケーションソフト、あるいはウェブアプリケーションが、自ら持つ機能の一部を外部のアプリケーション(ソフトやウェブサービス)から簡単に利用できるようにするインターフェース。ここで言うインターフェースとは、機能の呼び出し手順や記述方法などを定めた仕様を指す

 ライブラリとは(IT用語辞典より)

らいぶらりとは、プログラム言語において、ある特定の機能を持つプログラムを定型化して、他のプログラムが引用できる状態にしたものを、複数集めてまとめたファイルのことである。

なんとなくわかったのですが、とりあえず、自分の理解を絵にしてみました。

上の図がライブラリのイメージ図で、下の図がAPIのイメージ図です。

f:id:pgpg-sou:20131017012348p:plain

f:id:pgpg-sou:20131017012410p:plain

まとめ

APIとライブラリはどちらも便利な機能を呼び出すという意味では同じです。

しかし、APIとライブラリはそれぞれ下のような特徴をもっています

  • APIは既存のソフトやウェブサービスを簡単に利用するためのもの
  • ライブラリは数学の関数群やファイル操作の機能群といったそれ単体では意味をなさないもの

この二つより

呼び出す機能が何に属しているかによってAPIかライブラリかの判別ができるのではないでしょうか。