スポンサーリンク

【プログラミング基礎知識】APIについて

みなさんこにちは!
のむ(@nomu_engineer)です!

APIって詰まるところどう言うことなんだろうって思った方いると思います。

僕自身いまいちわかっていません。
なので、この記事で一緒に勉強していきましょう!!

結論から言うとAPIとは、「Application Programming Interface」の略で、「ある一つの機能に特化したプログラムで共有可能なもの」「ソフトウェア機能を共有する仕組み」のことです。

一つの言葉で色々な意味を持っているのでゴッチャになる人も多いかもしれませんね。

この記事を読むメリット
・APIについて理解を深めることができる
・APIを使う理由を知ることができる
・APIの具体例を知ることができる

この記事を読むおすすめの読者
・プログラミング初心者
・APIについて理解が浅い方
・駆け出しエンジニア

それでは早速詳しくまとめていきたいと思います。

APIとはなんなのか

先述しましたが、APIとは抽象的に言うと、アプリケーション同士が情報(データ)をやり取りする場合に使用する、インターフェイスという仕様のこと。

インターフェイスとは、ざっくりいうと、異なる2つのもを仲介するという意味を持っています。
つまりは、何かと何かを繋ぐためのものということです。

一番わかりやすいインターフェイスが、USBだと思います。

パソコンとマウス、キーボード、プリンターなどの色々な機器をUSBがあることでつなげることができました。
(今ではUSBなくても繋げれますが。。)

APIも名前の通り、インターフェイス一種です。
分類としては、ソフトウェアインターフェイスの中に入ります。

インターフェイスの話をしてしまうと、話がそれていってしまうので、詳しくはまた別の記事でまとめたいと思います。

APIとは、ある一つの機能に特化した共有可能なプログラムのこと、ソフトウェア機能を共有する仕組みのことです。

どうも調べていると、幅広い言葉の使われ方をされてるようにも思えます。

APIが存在する理由

それでは次にAPIが存在する理由についてまとめていきます。
APIはとても便利なものです。

よく使う機能がAPIとして存在していれば、それと自分が作成するアプリをつなげることで、使いたい機能のAPIを自分のアプリに反映することができます。

詰まるところ、APIを用いることで、その機能に関しては1からプログラムを記述する必要がないということです。
大変便利ですよね!!

なので、アプリケーションの作成をするときは、このAPIを用いることで効率よくアプリの作成を行うことができます。

APIが存在することで、アプリやサイトの作成の時間が大幅に短縮されます。

APIの具体例

最後にAPIの具体例について紹介して終わりたいと思います。
WebAPIの場合、プログラムはWeb上に公開されており、外部から呼び出して使うことができます。

よく紹介されていますが、WebAPIの一つとして、Google Mapsを自分のアプリやサイトに反映することができます。

これにより、Mapを用いたサイトの作成が可能になります。
APIとして、外部から呼び出すだけで、Map機能をサイトに反映することができるということです。

これを1から、Mapの機能を作成しようとしたら膨大な時間と労力とコストがかかると思います。
僕はマップ機能を1から作ってくれと言われても、作れる自信がありません。笑

おそらくかなりの時間がかかると思います。
ですが、このAPIを用いることで、短時間で自分のサイトにMap機能を追加することができます。

Map機能の他にも、クレジット決済機能のAPIもあります。
こちらもクレジット機能を追加するなら、ほぼ間違いなく必須のAPIです。

自分でクレジット機能を作成する事も可能かもしれませんが、そうなった場合、セキュリティ面を担保することができません。

セキュリティ面を考慮した上でも、クレジット機能をのAPIを追加することが大事になったりします。

最後に

以上が、APIについてのまとめでした。
復習として、APIとはある一つの機能に特化した共有可能なプログラムのこと、そして、ソフトウェアの機能を共有する仕組みのことです。

詰まるところ今回の例で例えると、Google MapsというプログラムがAPIであり、Google MapsというAPIの機能を自分のアプリに反映できる仕組みのことをAPIと言います。

色々な言葉の意味を持っているので、ややこしい部分もあるかと思いますが、必ず整理しておきたい知識ではありますので、しっかりと抑えておきましょう!

ありがとうございました。

スポンサーリンク




この記事を書いた人