JavaScriptの歴史
現在、世界には200種類以上ものプログラミング言語が存在すると言われています。なかでも「JavaScript」は、WEBエンジニアなら絶対に押さえておきたい必須言語の1つであり、世界の9割近くにものぼる web サイトで使用されています。
そうなれば、JavaScript 無しには、快適なインターネットライフは成り立たないと言えるでしょう。2019年、今や ML 開発でおなじみの「Python」に首位を譲りましたが、それでもなお高い人気を誇っています。
今回は、2NFと一緒にそんな JavaScript の歴史に触れてみましょう!
<目次>
1.JavaScript ってどんな言語?
JavaScript は、「動きのある」コンテンツを実現させるプログラミング言語です。webサイトで広告が出てきたり、ボタンをクリックすると画面が表示されるといった技術こそ、JavaScript がもっとも得意とするところです。
他にも、JavaScript の主な特徴を挙げてみましょう。
①いろいろなスタイルの開発が可能(手続き型・オブジェクト指向・関数型など)
②ブラウザとテキストエディタだけで実行できる
③フロントエンドでもサーバー側でも開発できる
④多種多様なフレームワークがある(「Vue.js」「Angular」「React」など)
このように、JavaScript は他の言語に比べて敷居が低いため、「初心者向きのプログラミング言語」でもあるといえます。
2.JavaScriptの誕生
1995年、JavaScript 誕生
JavaScript が生まれたのは、1995年のこと。
当時 ネットスケープコミュニケーションズのプログラマーだった、ブレンダン・アイク氏が開発しました。開発当初は「LiveScript(ライブスプリクト)」という名称でした。
しかし、同年サン・マイクロシステムズ(現:オラクル社)からリリースされた Java が注目を浴びていたことにあやかり、「JavaScript」と名付けられました。そんなわけで、混同されやすい「JavaScript」と「Java」は全くの別物です。
JavaScript にいきなり逆風
1996年、マイクロソフト社が Internet Exploler 3.0をリリースしました。マイクロソフト社は JavaScript を使いたかったのですが、ネットスケープ社は許可を出しませんでした。仕方なくマイクロソフト社は「JScript」という言語を開発しました。しかし、ブラウザで互換性がない部分が多く、デベロッパーには大不評でした…
1997年、JScript と JavaScript の非互換性の問題を解決するため、国際的な標準化団体「ECMA」に JavaScript の標準化を申請します。これにより生まれたのが、「ECMAScript」です。
この頃に起こっていた「Netscape Navigater」と「Internet Exploler」のブラウザのシェア争いを「第一次ブラウザ戦争」とよんでいます。勝敗を分けた決め手は、1998年に発売された Windows98 でした。Windows98 には、Internet Exploler が標準搭載されていたので、必然的に Internet Exploler を使うユーザーが増え、シェアを伸ばしたというわけです。
そして、2000年代初頭。第一次ブラウザ戦争の敗北に追い打ちをかけるように、JavaScript には逆風が続きました。実はこの頃、JavaScript に対して、エンジニア界隈からの不平不満が勃発していました。Java Script は、ブラウザ上でアニメーションのように「動きのあるコンテンツ」を実装できることが特徴です。しかし、これを利用して目ざわりなアニメーションを多用するケースや、誰でも容易に導入できることが原因で、セキュリティ面での不安要素も高まり、JavaScript 機能自体をオフにしてしまう人が続出しました。
また、Flash という超強力なライバルも出現します。ECMA Script がベースの「Action Script」が Flashに組み込まれたこともあり、動きのあるコンテンツは、動作が軽い Flash を起用するのが主流に。挙句の果てには「JavaScript はもういらない」とまで言われるようになってしまうのです…
Google が救世主に!そこから、一気に攻勢
そんな絶望的な状況の中、ついに JavaScript に転機が訪れます。2005年、JavaScript の技術「A-jax」を採用したGoogle マップが登場したことで、JavaScriptに復活の道が開けたのです。
さらに、この時期、A-jax の他にも、JavaScript復活に貢献したものがあります。それが、「jQuery」や「prototype.js」などのライブラリ。これらのライブラリが誕生したことで、少ない記述で豊かな表現が可能になりました。そして2008年、「node.js」の誕生により、JavaScript は一気に拡大します。
これまでは、フロントエンドでしか使用できなかった JavaScript が、ついにサーバサイドでも使用できるようになったのです。しかし、更なる拡大を狙って開発に着手した JavaScript2.0 は、徒労に終わってしまいました。なぜなら、ECMAScript の標準化が「3.1」と「4」で分裂してしまったためです。後に、両者を合わせた「ECMAScript Harmony」、いわゆる「ECMA Script2015(ES6)」が標準化されました。
3.JavaScript は時代遅れ?それとも現役?
そんな紆余曲折を経てきた JavaScriptですが、最近プログラマー界隈では、「まだ JavaScript で書いてるの?」という会話がチラホラ…昨今は JavaScript ではなく、「TypeScript」で書くプログラマーが増えています。
なぜなら、TypeScript には以下のようなメリットがあるからです。
①型安全(JavaScript 変換時にエラーを教えてくれる)
②どのブラウザでも動く
開発担当を1人で行っていたり、使用言語を特定されない場合は、TypeScript で書いているプログラマーが多いのです。しかし、node.jsも TypeScriptも、結果的には JavaScriptとして実行されます。よって、JavaScript が web上に必要不可欠な言語であることは間違いありません。エンジニアが現在ある言語を改良して、新しい言語がどんどん生まれていくことは、開発業界にとってはとても良い傾向だと思います。
まとめ
今回は、JavaScriptの歴史について触れてみました。2020年6月、JavaScript を開発したブレンダン・アイク氏と、ECMA Scriptの仕様をまとめたアレン・ワーフスブラック氏は、米計算機学会の機関誌「ACM Journal」にて、JavaScript が誕生してからの20年を振り返った文書を公開しました。
文書の中では、JavaScript の当初について、以下のような言及があります。
JavaScript は当初「Javaのおまけのようなスクリプティング言語」という位置付けだった。 ~中略~ しかし、JavaScriptを用いた経験を積んでいくなかで、ウェブ開発者らは、JavaScriptこそ本当に必要なものだと気づき始めた。
アイク氏のこの言葉は、決して JavaScriptだけに通ずる話ではなく、エンジニアが成長していく上での教訓のように思えてなりません。
弊社2NF はJavaScriptg が大変得意であり、ベトナムオフショア市場における大きな強みの一つとなっています。JSを使用したウェブシステム開発などの様々な案件を取り扱っております。JavaScriptに関するお仕事を任せたい、JavaScriptに精通した人材が必要な案件を展開したい、という方がいらっしゃれば、是非弊社までお問い合わせくださいませ。