APIとライブラリの違いってなんですか?



最近話題のGoogle・・・APIと関数の集合のライブラリって何が違うんですかね?

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/02/06 05:48:12
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答5件)

id:taknt No.1

回答回数13539ベストアンサー獲得回数1198

ポイント20pt

http://ja.wikipedia.org/wiki/Application_Programming_Interface

API

ライブラリを使いやすくしたもの。


http://ja.wikipedia.org/wiki/%E3%83%A9%E3%82%A4%E3%83%96%E3%83%A...

ライブラリ

汎用性の高い複数のプログラムを、再利用可能な形でひとまとまりにしたもの。

id:Kumappus No.2

回答回数3784ベストアンサー獲得回数185

ポイント20pt

API=Application Program(ing) Interfaceなんで直訳するとアプリケーションプログラム用界面。

つまり関数の仕様のことです。関数名、引数、戻り値、副作用その他。

http://e-words.jp/w/API.html

なんかでもごっちゃにされていますが、ライブラリというのは関数の実体(プログラムモジュール)の集合のことなので本来は違うものです。

実際にはプログラム作法まで変わってきちゃうんで違いが生じてしまいますが、本来的にはGoogleなどのWeb Service APIもライブラリ(例えばWindowsのMFCとか、UNIXのlibcとか…)のAPIも意味的には同じものです。

裏(呼ばれた先)で実際の処理を行うものが「マシン内部にあるプログラムモジュール」なのか「Webサーバの中のプログラム」なのかの違いです。

うまくライブラリでAPIを作ってあれば、裏で何が動いていようとAPIを利用する側からはまったくそれを意識しないで処理させることも可能です。

そうですねー、Windowsパソコンを人間が操作するときに確かにアイコンは違ってますが本体HDDもネットワーク上にあるHDDも「Cドライブ」とか「Xドライブ」という名前で同じように操作できますよね?あの感覚です。

id:drill256 No.3

回答回数175ベストアンサー獲得回数7

ポイント20pt

 APIとはApplication Program Interfaceの略ですので、狭い意味で考えると関数の引数や返値の事。

 通常会話などで使うときはもっと広い意味で、機能や使い方の事を差してAPIという場合が多い。

 ライブラリはというと、ソースや実行コード、ライブラリファイルなど、もの自体を差す場合が多い。

 会社によって微妙にニュアンスが違う場合があるかも。

 ○○関数のAPIとか、○○ライブラリのAPIとか、まぎらわしい使い方も多い。

id:takfjt No.4

回答回数23ベストアンサー獲得回数3

ポイント20pt

まずAPIという言葉についてですが,以下に詳しく書いてあります.

http://ja.wikipedia.org/wiki/Application_Programming_Interface


プログラマがライブラリの機能を使うために,

ライブラリが提供している関数の型もAPIという言葉の範囲にはいります.


"Google API"というと,Googleが提供するサービスそのもののように使われれていますが,

正しくは,Google APIとはGoogleが提供するWebサービスのプログラマ用外部仕様であり,

関数のリストのようなものです.


ライブラリでも,プログラマがライブラリを使うための

関数の説明書きやリストがありますよね.

APIとはそういうものです.


よって,Google APIとライブラリというのは正確には

対応関係にある言葉ではありません.


GoogleのWebサービスとライブラリという風に比較した場合は,

関数がGoogle側で実行されるか自分のコンピュータで実行されるか以外は,

概念的には大きく変わりません.


ただし,実際にプログラミングしようと思うと,

ライブラリを使う場合に比べて,GoogleのWebサービスを使うのは

SOAPを使わなければいけないなど手順が膨大に増えるので非常に大変です.

PerlやRubyではそういう手順をまとめてしまった,

Google APIを使うライブラリ,というのも提供されているようです.

id:sadajo No.5

回答回数4919ベストアンサー獲得回数49

ポイント20pt

http://www.kusa.ac.jp/~e08c023/netpro2004/report4.html

>APIとライブラリの違いはAPIは呼び出すために必要な手続きであり、 ライブラリはそれを実際に処理を実行する。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません