JavaScriptの歴史 – Node.jsとReact登場

今回から、JavaScriptにおける記事をチュートリアルとしてアップしていこうと思います。
最終的には、簡単なwebアプリケーションを作成できるような流れをとっていきたいと思います。

 

第一弾として、JavaScriptとは何かと歴史、Node.jsについて解説していきます。
簡単なwebアプリ作成の記事は随時発信していきますので、気になる方は更新をチェックしていただければと思います。

1. JavaScriptとは

まずはじめに、JavaScriptそのものについて考察していきたいと思います。
現在、JavaScriptが生まれてから20年以上経っていますが、一体どのような歴史を辿ってきているのか簡単ではありますがまとめておこうと思います。
ざっくりとJavaScriptに関する技術を順々に紹介します。
一つの言語でこれだけの歴史があるのかといった部分も含め、理解を深めていただくこと前提に知識を深めていただければ幸いです。

 

古くからあるけど、現在も進化を続けているこのJavaScriptですが、このJavaScriptはWebブラウザで動かすことができます。
全てのPCやスマートフォンで動作させることができるもっとも普及しているプログラミング言語の一つかなと思います。
コーディングでのルールはありますが、基本的にはシンプルで簡単であり、取り組む意欲さえあれば誰にでも使い始めることができるJavaScriptですが、実際にはどのように始まってどんな歴史をもつ言語なのか、その歴史を振り返っていきましょう。

 

2. JavaScriptの歴史

⬛1995年 – JavaScript誕生

まさにタイトルにもあるようにこの言語が生まれたのが1995年になります。
この言語は、当初からWebブラウザに搭載されており、Webページに動的要素を組み込むためのスクリプト言語として誕生しました。
そのため、この言語はwebのための言語として育ってきたと言えるかと思います。

 

当初、この言語の名前は「LiveScript」という名前だったらしいです。(私も調べてたら知りましたw)
この時、同年の5月にプログラミング言語の一つである「Java」も発表されており、こちらの言語が注目を浴びていました。
そこで、この「Java」言語への人気にまさかの便乗によって、「JavaScript」といった名前に改名されました。
そのため、全く異なる言語同士ではあるのですが、今でも「Java」と「JavaScript」を勘違いしている人が多いかもしれません。
実際、上記のような経緯で名付けられているので、勘違いしてしまう要因となっているかもしれませんね。

 

ちなみにですが、1995年にはWindows95(私はギリギリ触れたことがありますw)が発売されており、Internet Explorer1.0もリリースされました。

 

⬛1996年 – JScriptの登場

この年にIE3.0がリリースされました。
ブラウザに関する歴史もありますが、ここでは省略します。
兎にも角にも、ブラウザの争いなどから利用する言語やブラウザに搭載する言語が異なっていき、言語としての分裂が発生しました。

 

ただ、類似している言語同士の互換性がない状態が続いてしまったために、JavaScriptを標準化する流れがありました。
1997年6月に標準化されたプログラミング言語の仕様の初版は公開され、標準化は順調に進み、1998年に第二版、1999年に第三版が公開されています。

 

⬛2000年代前半 – JavaScript低迷期

標準化は当初は順調でした。しかし、第四版を策定する時点で言語に大きな変更を加えようとする推進派と保守する反対派で分裂してしまい、標準化の進捗が芳しくない状態となりました。

 

また、JavaScriptにおける脆弱性を悪用しているウィルス、JavaScriptを多用した不快なWebサイトが横行するようになり、JavaScriptの機能自体もオフにする人もいたそうです。

 

同時期に動作が軽く当時爽快なアニメーションを利用することができた「Flash」が流行りました。
この「Flash」はプラグイン導入が必要となりますが、この利便性から多くのWebサイトがこの「Flash」に対応していきました。

 

なお、この「Flash」は仕様に素早く準拠したスクリプト言語である「ActionScript」を搭載していた点でも人気の要因となりました。
こういった流れから、JavaScriptを利用する機会が減っていくこととなりました。

 

ただ、2005年から激アツです。

 

⬛2005年 – 「Ajax」によるJavaScript激アツ時代

ここからJavaScriptが盛り返してきます。Google先生ありがとうです。
2005年ごろにこの言語の転機が訪れました。Google先生がAjaxの技術を利用した「Googleマップ」を発表しました。
この「Googleマップ」に伴って、「Ajax」が話題となり、JavaScriptが再燃するきっかけを与えました。

 

この「Ajax」とは、JavaScriptで非同期通信を利用することで、サーバからデータを取得して、動的にページ内容を書き換える技術の総称です。

 

これ以降では、多種多様なWebサイトにて「Ajax」が利用されることとなり、こういった流れというのは現在でも受け継がれている状況となっています。

 

⬛2008年 – JavaScript高速化と「V8」

上記でお伝えした「Ajax」にて人気を取り戻し、幅広く利用されることとなったJavaScriptですが、残念ながら実行速度が遅いという部分がネックとされていました。
ここでもGoogle先生大活躍です。

 

2008年にみんな大好きGoogle Chromeが公開されました。
それまでのブラウザと比較すると、ページの表示速度が高速でした。
また、JavaScript実行エンジン「V8」が実装されていました。

 

⬛2009年 – Node.js登場

やっと辿り着いたNode.js。
この2009年にファイルの読み書き・圧縮、HTTPサーバなどのAPI追加したJavaScriptの実行環境である「Node.js」が登場しました。
当初、Node.jsはサーバサイドで動作するJavaScriptとして注目を集めていました。

 

それまでのWebアプリでは、Webサーバ側のプログラムはPHPやJavaなどの言語で開発し、クライアント側はこれらと別でJavaScriptで開発することが一般的でした。

 

ただ、このNode.jsの登場によって、サーバ・クライアントにおいても同じJavaScriptを利用して開発できるようになったわけです。

 

高速な「V8」エンジンの登場により、実用レベルに達することができたわけですね。

 

とりあえずNode.jsの登場まで説明してきましたが、今でも当然利用されているので、
簡単に解説していければなと思います。

3. モダンなweb開発におけるライブラリ

まだJavaScriptに関する歴史は2010年以降から現在までも紆余曲折あるのですが、とりあえずNode.jsまでご紹介しました。
その紆余曲折の中で、言語仕様がモダンなものになってきましたが、言語機能だけがモダンになったわけではありません。

 

実際にJavaScriptでの開発を強力にサポートするライブラリ・フレームワークが登場してきています。
注目されているものとして、AngularJS、Vue.js、React.jsなどのライブラリとなります。
私の場合は、Reactを中心に記事を作成していこうと考えています。

 

これらのライブラリを利用することで、SPA(Single Page Application)と呼ばれるフロントエンド開発を行う機会が増えてきました。

 

このSPAは、単一のWebページが一つのWebアプリとなるわけです。
SPAはブラウザを使用するアプリでありながらも、デスクトップアプリと同等な操作性を持ちます。

 

そして、このSPA実現を容易にしてくれているのが、取り上げていく予定のReactになります。

 

このReactとReactを支えるNode.jsをきっかけにWebアプリケーションを作成してもらえればと思います。
このチュートリアル記事が少しでもあなたの役に立てば幸いです。

4. まとめ

⬛まとめ – 1

ざっくりではありますが、JavaScript歴史から概要をお伝えしました。

⬛まとめ – 2

モダンなライブラリやツールを利用することで、最新のJavaScript仕様を開発で利用できることをお伝えしました。

⬛まとめ – 3

JavaScript(Node.js)を活用し、Reactという便利で強力なライブラリの使い方を解説する予定です。

 

次回は、Node.jsについての特徴などをお伝えする記事をアップしようと思います。
今回の記事を最後までお読みいただき、ありがとうございました。