はじめに
現在の現場で「Web API」という言葉を聞くことが多いですね。
実際に現場で使用し始めたのですが、何もわからないですね。。。
他のエンジニアの方々の話を聞いていると「こちらはAPIでつなげたりする感じでしょうか?」とか最近頻繁に登場する単語になってきました。→ めっちゃ皆さんわかってらっしゃる風で怖い。。。
しかし、APIについてはわからないので、上司に聞いたら独学で勉強しちゃったからなぁちゃんと説明できないんだ…って言ってましたねw
なるほど、独学でできるのかと思って色々と勉強しました?ので調べたことを記事メモとして残していきます!
APIとは?
「API」とは、「Application Programming Interface」の頭文字です。
→ アプリケーション・プログラミング・インターフェイス
これだけで意味を理解しようとしますと「アプリケーションをプログラミングするためのインターフェイス」という意味ですね。
と言ってもわからないと思いますので、順番に単語の意味を理解していきましょう。
まあ、アプリケーションとプログラミングについてはわかりますかね。。。?
ということでインターフェイスについて↓
「インターフェイス」とは、コンピュータ用語でいいますと、「何か」と「何か」をつなぐものという意味です。例えば、USBも「パソコン」と「周辺機器」をつなぐものですので、インターフェイスの一つです。
つまり、APIとは、この「何か」を「何か」が「アプリケーション、ソフトウェア」と「プラグラム」をつなぐもの、という意味になります。
これでもまだわかりにくいですかね?違う例ですと、APIとはソフトウェアの機能を共有できる仕組みのことをいいます。
APIの利点、メリットについて
APIのイメージはつきましたでしょうか?次はAPIの利点についてまとめたこと説明していきたいと思います。API機能については大きく3つの利点があります。
その3つは下記の通りです。
・ソフトウェア開発の効率化
・セキュリティの向上
・最新情報を簡単に取得可能
ソフトウェア開発の効率化化によるコスト削減
APIで組み込むことができる信頼できるプログラムが世の中にすでに存在する場合、そのプログラムと連携することで、自分で1からプログラムを組む必要がなくなり、ソフトウェア開発の効率化がはかられます。開発側にとっては、開発時間を短縮できるのは大きなメリットです。
時間短縮できると他の工程に時間を割くことができ、結果的にコスト削減に繋がります。
セキュリティの向上
サイトやアプリの会員登録をするときにGoogleアカウントやFacebook、またはTwitterなどのアカウントを連携することができ登録できることはありませんでしょうか?
それは、各種のサービスががAPI連携で行われているため、他のアプリケーションによる、ログイン認証ができるようになっています。
自社でセキュリティレベルの高い会員登録システムを入れるよりも、すでにあるセキュリティレベルの高いログインシステムを導入するほうがユーザーでも安心ですよね!(これについて知らない人がほとんどですが….w)ちなみに、提供側はAPIの連携前に必ずユーザーの承諾を得る必要があります。ユーザー側も連携サービスを使うにはユーザー情報が共有されることを許可する必要があります。(どの情報が共有されるか、などはサービスによって異なります。)
最新情報を簡単に取得可能
APIを使用すれば、それぞれのサービスの最新情報を毎回更新しなくても取得、利用することができます。
例えば、自分のサイトでAmazonの商品を売っている場合、Amazonでの販売価格が変わった場合でも、API連携で情報を取得してきているので、その場合は自動で変更が反映されます。
TwitterやInstagramへの投稿をFacebookにも自動で投稿するように設定する、などが可能となっているのもAPIのおかげです。
最後に
今回は、APIについて気になって調べたことを取り上げきました。
APIを使うことで、開発コストを削減しながらも、これを理解すれば自社でも組むことができるかもしれません。使いこなすためにはHTMLやCSSなどの基礎的なプログラミング言語、もしくはそれ以上の知識が求められるかもですが、言語を必要とせずに感覚的につかれうものも増えてきていますので、この際APIについて覚えていきましょう!
最後まで、記事を読んでいただきありがとうございます。
今後も気になったことを記事(メモ)のようにして記載していきますので、
よろしくお願いいたします。