こんにちは!youtaです!
「皆さん、唐突ですが“API”って言葉をご存じですか?」
IT業界に勤めている方や、“JavaScript”や“Python”の学習をされている方であれば耳にしたことくらいはあるかもしれません。
もしかしたら「そんなこと知っとるワイ!もう利用してるワイ!」なんて方もいるかもしれませんね。
知らなかった人は恥じる必要もありません。このブログを通じて“API”を理解しちゃいましょう!
APIとは?
“API”だの“DOM”だのアルファベット3文字で並んでる用語多すぎ、やっぱプログラミングって専門的だし敷居高いわサヨナラ。
って思った方、ちょっと待って!一つ一つ分解していったらそんなに難しくないからまだ諦めないで!
そもそも“API”とは何なのかというと、
P programming (プログラミング)
I interface (インターフェイス)
の略で、「外部のサービスが有する情報・機能を扱えるようにする仕組み」のことを指します。
第三者によって開発されたアプリケーションと自身のソフトウェアやアプリケーションを繋げる存在、いわば「架け橋」のようなものとなっています。
わざわざ利用する必要ある?って思った方、考えてみてください。
我々は普段どうやって情報を手に入れていますか?部屋に一人ボーっと寝転んでいて情報は手に入りますかね。
テレビやネットといった架け橋を通じて情報を手に入れて、その情報を発信していますよね。それと似たようなものです。
APIを用いて外部サービスを利用することで、機能性のアップに繋がり、より便利なものになります。
APIを活用するメリット
何となく“API”についてわかってきたところで、活用した際のメリットを以下の3点に絞って具体的にお話していきたいと思います。
②セキュリティとCSの向上
③システム変更の影響を最小化
1開発の効率化によるコスト削減
APIを活用して外部サービスの機能を使用することで、自身がそういった機能を1から開発した場合に発生する時間とコストを削減することができます。
また、APIを提供している企業はその分野に特化している場合が多いため、自身で開発する場合よりもクオリティの高い機能を実装することができる場合があります。
2セキュリティとCSの向上
アプリ会員の登録をする際、ネットで買い物をする際にアカウントの連携をすることで登録が簡単にできたことはありませんか?
(GoogleやFacebook、Twitterのアカウントで会員登録をするなど)
実はその登録もAPIが関係しているんです!
アプリやサイトが各種サービスとAPI連携しているため、別アプリでログインしても認証されるという仕組みになっているんです。
APIを活用して各種サービスとの連携を図ることで、多くの情報や機能の管理が自身で行うよりも簡単かつ安全なセキュリティの下行われることになります。
(GoogleやFacebookが管理しているシステムで情報が保管されるのであれば安心しませんか?)
また、自身で開発しないことで、低コストかつ高クオリティなサービス提供を行うことができます。
それによってCS(顧客満足度)の向上も見込まれるのです。
3システム変更の影響を最小化
APIを利用することなく、自身で開発した機能のみを実装している場合、システムの変更が生じた際に機能の多くを書き換える必要が生じる可能性があります。
変更が生じると「必要なデータがどこかにいってしまった。」「本来あるべき場所とは違う部分にコードが書き込まれている。」なんてことが起こって、業務に支障をきたしてしまうかもしれません。
しかし、APIを活用していればそういった変更の際に生じる影響を小さくすることができます。
どうして影響を小さく留めることができるの?って思った方。
その理由はとっても簡単で、
外部サービスを利用しているため、こちらのシステムに変更が発生しても外部のシステムが書き換わる心配はないからです。
(自社のシステムを書き換えたことでGoogleのシステムにエラーが生じたら怖すぎますよね。)
APIを活用するデメリット
こんなにも便利なツールには何か大きなデメリットが存在しちゃうんじゃないかって疑ってしまいますよね。
でも安心してください。APIを活用する際のデメリットは以下の1つだけになります。
1外部サービスへの依存
APIの活用によって外部のサービスを利用することができるということは先ほどからお伝えしていますね。
そのため、こちらからそのサービスへの影響力はありませんが、サービスからこちらへの影響力はとても大きなものになります。
つまり、相手からの影響をもろに受けるということになります。
「サービスの料金変更」や、「そもそもAPIの提供を中止する」「バージョンアップに伴う仕様変更」etc…
といったようなことが起こるとこちらのシステムに不具合が生じてしまう可能性があります。
また、その依存した状況ゆえに発生することなのですが、
こちらに問題が発生していなくてもAPIを提供しているサーバーに問題が発生すると我々は利用することができなくなってしまうことがあります。
便利な存在ですが、その依存性がデメリットとなってしまっていますね。
ただ、そのデメリットを上回るメリットがたくさんあるので、利用しない手はありません!
WebAPIとは?
ここまでAPIのメリットやデメリットをお伝えしてきましたが、
「APIの中にも種類がある」ということはご存じでしょうか?
「ええ、また専門用語かよ勘弁してくださいよ」なんて思った方、大丈夫です。
基本的に多くの方が利用するのがこちらの“WebAPI”なんだと思っていただけたら大丈夫です。
こちらは、Web上に公開されていて、外部から利用することが可能なAPIとなります。
具体的な例を出すと、
- Facebook API
- Twitter API
- Google API
- Amazon API
などがあり、これらを利用すれば先ほどお伝えしたようにログインが簡単になったり、利便性が格段に上がることは間違いないです。
WebAPIを使用する際の注意点
APIは誰でも簡単に利用できるからこそ、使用する際に注意しなければならないことがあります。
それは、APIキーとAPIシークレットキーの管理です。
キーだのシークレットだのもうよくわかりませんね。
これらは簡単に言うと、
APIシークレットキー = パスワード
といったような役割を果たします。
これらの情報が流出してしまうと、機密情報漏洩や金銭のやり取りが勝手に行われてしまうリスクがありますので、雑な管理はしないようにしましょう。
- APIキーとAPIシークレットキーは他人に教えないようにする。
- 複数のサービスで同じキーとシークレットキー使用しない。
- 権限の付与は安易に行わない。
この程度はしっかりと意識する必要があります。
最後に
いかがでしたか?
今回の記事では“API”がどういったものなのかを紹介させていただきました。
一見難しそうに思われるAPIですが、しっかりと理解するとそんなにとっつきにくいものでもないことがわかりますね。
簡単に利用できるため、まだ利用されていない方は是非導入することをオススメします!
それではまた次の記事でお会いしましょう。
ご清覧ありがとうございました!
コメント