できる気になっているJSを改めてチュートリアルからやってみる 19日目
~~ WebAPI ~~
最近ちょっとずつまた学びなおす必要が出てきたなぁと思い、いろいろプログラムを勉強しなおしているところなんですが、実はもう今使っている知識は古いのかもと思って、アップデートしようとおもいやってみる会。
実施するのは、この記事
完全な初心者向けと書かれたチュートリアルは全然初心者向けではないって話。アップデートしていきましょう。
クライアントサイドWebAPI をやっています。
Web APIの紹介
Application Programming Interfaces(APIs) は開発者が複雑な機能をより簡単に作成できるようプログラミング言語から提供される構造です。複雑なコードを抽象化し、それに代わる簡潔な構文を提供します。
クライアントサイドJavaScriptでのAPI
ブラウザAPI
Webブラウザに組み込まれていて、ブラウザのコンピュータの環境の情報を取得し、これを使って役に立つややこしいことを行えるようにするものです。グーグルマップにあなたの居場所を表示するようなことができます。裏で実際にはブラウザは低レベル(たとえば C++)の複雑なコードをいくつか使ってデバイスのGPS機器(あるいは位置情報を得られるほかのなんだか)通信使、位置情報を取得し、コードから利用できるようにブラウザ環境に情報を戻しています。
サードパーティ API
デフォルトではブラウザに組み込まれておらず、普通はコードと情報をWebのどこから読み込まねばなりません。TwitterAPIを使えば、あなたのWebサイトにあなたの最新のツイートを表示するようなことが可能になります。
JavaScriptとAPIとそのほかJavaScriptツールの関係
JavaScript
ブブラウザに組み込まれた高レベルスクリプト言語。Nodeのようなブラウザ以外のほかのプログラミング環境でも使えるものもある。
ブラウザAPI
ブラウザに組み込みのJavaScript言語の上にある構造で、なんかの機能をもっと簡単に実装できるようにします。
サードパーティAPI
サードパーティのプラットフォーム(TwitterやFacebook)上に作られた構造で、それらのプラ夫フォームの紀伊能をWebページで利用できるようにする。
JavaScriptライブラリ
多くは独自の関数を含んだJavaScriptファイルでWebページにくっつけることでスピードアップしたり共通の機能を書いたりできるものです。
JavaScriptフレームワーク
ライブラリの1階層上。JavaScriptフレームワーク(AngularやEmber)はHTMLやCSSにJavaScript、インストールして1からWebアプリケーションを作成するのに使えるそのほかもろもろの技術がパッケージ化されている場合が多いです。ライブラリとフレームワークの大きな相違点は、「制御の逆転(Inversion of Control)」にあります。ライブラリのメソッドを呼ぶときには、開発者がコントロールしています。フレームワークでは、コントロールが逆転します。フレームワークから開発者のコードが呼ばれるのです。
APIでなにができる?
・文書を操作するAPI
・DOM(DocumentObjectModel)API
・サーバからデータを取得するAPI
・XMLHttpRequest
・FetchAPI
・グラフィックスを描画したり操作するAPI
・Canvas
・WebGL
・動画と音声のAPI
・HTMLMediaElement
・WebAudioAPI
・デバイスAPI
・ハードウェアデバイスのデータを操作したり取得するAPI
・クライアント側でのデータ保持API
・WebStorageAPI
・IndexedDBAPI
一般的なサードパーティAPI
・Twitter API
・Mapquest や Google Maps API
・Facebook API
・Telegram APIs
・YouTube API
・Pinterest API
・Twilio API
・Mastodon API
いろいろべんりやで!