こんにちは、KiYOです。
システムエンジニア歴20年オーバー。製造現場に特化したシステム開発を主にやってます。
新しい物好きで色々なIT技術を勉強しては、仕事に使って行ってます。
KiYO
JavaScriptについて紹介します。
2000年代中盤あたりからJavaScriptと出会いましたが、あの頃はちょっとした動きのあるWebページを作れるぐらいの感じでしたが、今はJavaScriptがないとWebページが作れないレベルに躍進しています。色々なフレームワークも登場しています。
この記事でわかる事
- JavaScriptの特徴
- JavaScriptの歴史
- JavaScriptの利用シーン
今回はこの本を参考に、私の独断と偏見で記事を書いています。
リンク
言語を5点中評価
容易性 | 容易に言語習得できるか? | 4.5 |
将来性 | 将来性があるか? | 5 |
普及度 | 普及しているか? | 5 |
保守性 | 保守性が高いか? | 3 |
中毒性 | ハマるか? | 4 |
| | 21.5 |
目次
JavaScriptの特徴
Webアプリケーションの実現に欠かせない高速な言語
言語の特徴
- JavaScriptは唯一のWebブラウザ上で動作するプログラミング言語
- サーバなどの環境でも使われる(Node.js)
- プロトタイプベースのオブジェクト指向
JavaScriptの歴史
開発者 | Brendan Eich(ブレンダン・アイク)、Netscape Communications、Ecma TC39 |
誕生 | 1995年にNetscape Navigator 2.0に搭載されて登場 |
公式サイト | https://developer.mozilla.org/ja/docs/Web/JavaScript |
分類 | 動的型付け、プロトタイプベースのオブジェクト指向 |
影響を受けた言語 | C,Java,Perl,Python,Scheme,Self,CoffeeScript |
影響を与えた言語 | Haxe,Dart,TypeScript,CoffeeScript,ActionScript,Node.js,WebAssembly,Kitlin |
言語の歴史
1995年 | Netscape Navigator2.0に搭載されて登場 |
1996年 | IEにも搭載 |
2000年代中盤 | Ajaxなどの登場 |
2015年 | ECMAScript2015では多くの先進的な機能が追加 |
Web開発に特化
- クッキー制御、セッション管理、データベース接続などWeb開発に便利な機能を標準でサポート
- Apache HTTP ServerなどのWebサーバのモジュールとして動作する
Ajax
- AjaxはJavaScriptの非同期通信を利用し、JSONやXMLのデータをサーバから取得し画面を表示する技術
- ページリロードなしで取得した情報を画面に表示できる
- Ajaxを使ったアプリにGoogleマップやGmailなどがあります
HTML5
- HTML5はWebブラウザで高速なアプリケーションを実装することを見越したHTMLなどWeb関連の一連の仕様
- 2008年にドラフトが勧告されて以降、描画のCanvasやオフライン機能など高度な機能が実装さている
ECMAScript6(ECMAScript 2015)
- 仕様の第6版となるECMAScript 2015策定以降、ECMAScriptは毎年更新されています
- これ以降、仕様の名称には発行年が付与されるようになった
- 転換期のECMAScript2015はECMAScript6と呼ばれることもある
- ECMAScript2015では、クラス定義、モジュール、イテレータ、for・・・ofループ、ジェネレータ、アロー関数、定数宣言、テンプレート文字列など様々な言語機能が追加された
コラム
JavaScriptの進化はWebブラウザの進化とも強く関連している。Webブラウザで動く唯一の言語としてJavaScriptは様々な機能が求められ、Webの発展とともに進化してきました。
JavaScriptの利用シーン
当初JavaScriptの利用シーンは、Webブラウザに簡易的な動的要素を組み込むものでした。しかし、その後、Ajax技術により大々的に脚光を浴びて、リロードのない動的なWebページを作るのには欠かせない存在となっています。
また、JavaScriptをサーバで使うNode.jsはWebサーバでアプリを作るのに利用されています。ReactNativeやElectronといったツールにより、スマートフォン、デスクトップアプリの開発も可能となりました。
JavaとJavaScriptの違い
- JavaとJavaScriptは全く違う言語(「パン」と「パンダ」ぐらい違う)
- JavaScriptが誕生した1995年はJavaが非常に流行して年であった
- Javaの開発元であるサン・マイクロシステムズ社と提携していたNetscape社が「JavaScript」と名付けた。名前が似ているだけで全然違う言語
JavaScriptが人気になる前と後
- 今ではJavaScriptのないWeb開発は考えられない
- AjaxやHTML5が出てくる前はWebアプリ分野ではJavaScriptは補助的な役割だった
- JavaScriptの代わりにJavaApplet、FlashやSilverlightなどのプラグインが多く用いられていた
- 現代ではこれらのプラグインはほぼ使われなくなり、JavaScriptを用いることが一般的となった
ECMAScriptとJavaScriptの違い
- ECMAScriptとは、JavaScriptの標準規格
- 1998年にEcma InternationalにてECMA-262という規格番号で標準化
- 日本でも、JIS X 3060として標準化
- ECMAScriptはあくまでも標準規格の名称であり、Webブラウザで動くものがJavaScript
JavaScriptは誰が作ってる?
- JavaScriptの元となる仕様のECMAScriptはECMAのTC39というグループが策定・推進
- TC39はMojillaやChromeなど(Webブラウザ)を実装する側、JavaScriptで実際にWebアプリを構築する側など複数の企業団体から集まったメンバーで運営
altJS
- 何らかのプログラミング言語からJavaScriptに変換して実行する言語をaltJSと言います
- Webブラウザでプログラムを動作させるにはJavaScriptしかありません
- JavaScriptに静的型付けを加えたTypeScriptが人気がある。その他、CoffeeScriptが有名です
- Elm、Haxa、Dartなども一定の人気がある
- 既存の言語をJavaScriptに変換する試みも多数ある。 Emascripten(C \C++)、GHCJS(Haskell)、BuckleScriptとjs_of_ocaml(OCaml)などは比較的よく知られています
JavaScriptのライブラリ・フレームワーク
- ライブラリやフレームワークが多数ある。2006年頃Prototype.jsや2008年頃jQuery
- Angular、Vue.js、Reactなどのフレームワークが登場し、軽快な操作性を持ち、複雑なWebアプリを効率的に開発することができるようになった
- スマホアプリを作るためのJavaScriptフレームワークのPhoneGapやReactNativeの登場
- PC向けアプリを作るためのJavaScriptフレームワークのElectronの登場
まとめ:Webブラウザ上で動的ページを作るならJavaScript一択
今回はJavaScriptについて解説しました。
Webブラウザ上で動的ページを開発するには、JavaScriptしかありません!
JavaScriptの必要性
- Webブラウザ(クライアント)側で動くプログラムはJavaScriptのみ
- JavaScriptのライブラリやフレームワークも多いため、開発がやり易い
- 色々な業種や分野で採用されており、需要が高い
言語を覚えたとしてもそれを使うシーンが少なければ、意味がありません。
やりたいことを実現するために、JavaScriptの使い方をマスタしましょう。
以上、KiYOでした!
今回参考にさせていただいた本はこちらです。今回紹介した言語やその他言語も紹介されているので大変勉強になりました。
リンク
まとめページで、他のプログラミングも紹介していますので、ご覧ください。
あわせて読みたい プログラミング言語まとめ こんにちは、KiYOです。 システムエンジニア歴20年オーバー。製造現場に特化したシステム開発を主にやってます。 新しい物好きで色々なIT技術を勉強しては、仕事に使…
コメント