ウェブの王者JavaScript、25周年おめでとう。今のところまだ王座にしがみついている。

Table of Contents

ウェブの王者JavaScript、25周年おめでとう。今のところまだ王座にしがみついている。

Netscape Communications と Sun Microsystems が初めてこの技術を発表した 1995 年 12 月 4 日から数えると、金曜日に JavaScript は 25 周年を迎えた。

このプログラミング言語の開発者で、現在ブラウザ企業Brave SoftwareのCEOを務めるブレンダン・アイク氏は、1995年5月をこのプロジェクト誕生の時と捉えています。開発期間はわずか10日間でした。しかし、当初JavaScriptはMochaと呼ばれ、その後LiveScriptへと名称が変更され、商標登録されたJavaScriptという名称が生まれたのは7ヶ月後のことでした。

当時、サンの共同創業者兼研究担当副社長のビル・ジョイ氏は、JavaScriptを「HTMLベースのコンテンツをJavaアプレットに接続する最も効果的な方法」と表現していました。しかしその後数年にわたり、JavaScriptの改良、ブラウザへの統合性の向上、GoogleのV8 JavaScriptエンジンなどの開発、そして互換性、セキュリティ、APIバージョン管理に関するJavaアプレットの問題が重なり、プラグインモデルは終焉を迎えました。

JavaScriptは、1997年6月にECMAScript仕様が標準化されて以来、その実装として正確に説明され、Webベースのアプリケーションの主要言語となっています。ここ数年、JavaScriptは世界で最も人気の高いプログラミング言語の1つとして常に上位にランクされています。

JavaScript Object Notation (JSON) 仕様を提案したベテラン JavaScript 開発者兼著者の Douglas Crockford 氏は、The Registerへの電子メールで、Netscape は消滅したかもしれないが、JavaScript は引き続き Web を支配していると語った。

マスクを外している人のイラスト

Safari、Yandex、Opera の JavaScript ベースのアドレスバー偽装脆弱性が修正されました

続きを読む

「JavaScriptが関数と柔軟なオブジェクトを寄せ集めたのは素晴らしい」と彼は言った。「しかし同時に、ECMAScript標準の改訂ごとに毎年増え続ける大量のゴミも積み上げてきた」

「しかし、コア言語は依然として優れており、JavaScriptを世界で最も重要なプログラミング言語へと押し上げたのです」と彼は述べた。「Webの限界や欠陥を克服するJavaScriptの能力がなければ、World Wide Webは何年も前に取って代わられていたでしょう。」

Webパフォーマンス監視ビジネスSentryのエンジニアリング担当副社長であり、JavaScript本の著者でもあるベン・ビネガー氏は、 The Registerへの電子メールの中で、JavaScriptの普及がその成功の鍵であると主張した。

「今日、JavaScriptはあらゆるコンピューティングデバイス、サーバー(およびサーバーレス)プラットフォーム、そして最も重要なブラウザで動作します」とVinegar氏は述べた。「JavaScriptを始めるための障壁は、Chromeを起動して開発者コンソールでコードをいくつか試してみるのと同じくらい簡単です。」

「そしてさらに重要なのは、今日ではほぼすべてのソフトウェア企業がブラウザ向けにソフトウェアを出荷しているということです」と彼は述べた。「Facebook、Google、Microsoft ― バックエンドのインフラがどれほど大きく異なっていても、バックエンドでどんな言語を使用していても、ブラウザで実行されるJavaScriptで書かれた複雑なUIを出荷しているのです。」

ビネガー氏はMicrosoft Officeを例に挙げました。10年前はネイティブデスクトップソフトウェアとしてのみ動作し、主にWindows OS上で動作していました。しかし今では、JavaScriptを多用することで、Microsoft 365の傘下でブラウザからOfficeを起動できるようになりました。

JavaScriptは、その人気はピークに達した可能性はあるものの、今後数年間は人気を維持する可能性が高い。特定のタスクには、より適した他の技術が登場している。その一つがTypeScriptだ。これは、Microsoftが支援するJavaScriptのスーパーセットで、静的型付けのサポートが追加されている。

しかし、Vinegar 氏は TypeScript が JavaScript に取って代わることができるかどうかについては懐疑的です。

「TypeScriptには多くの利点がありますが、汎用性という点では劣っています」と彼は述べた。「ブラウザの開発者コンソールを開いてJavaScriptを実行するという例は、TypeScriptでは不可能です。TypeScriptコンパイラをダウンロードしてインストールし、アプリケーションのビルドスクリプトをいじり、TypeScriptファイルをJavaScriptにコンパイルし、それをブラウザ(またはNode.jsのような別のランタイム)で実行する必要があります。」

Vinegar氏は、ブラウザやその他のランタイムでTypeScriptがネイティブサポートされるまでは、状況は変わらないだろうと述べた。「『そのまますぐに使える』という状態を超えるのは本当に難しい」と彼は語った。

それでも、Vinegar氏は、WebAssemblyが成熟するにつれて、今後5年間でJavaScriptの人気は衰える可能性があると考えている。WebAssembly(wasm)は、C++、Go、Rustといった様々な言語のコードを、ブラウザ上のスタックベースの仮想マシンで実行可能なバイナリ形式に変換する手段を提供する。そのため、wasmモジュールはJavaScriptコードと組み合わせて実行することができ、JavaScriptがプロセッサ負荷の高いタスクをwasmコードに引き継ぐことで、速度と効率を向上させるシナリオが可能になる。

Vinegar氏によると、JavaScriptをあまり使用せず、コンパイルされたWebAssemblyに依存するブラウザベースのアプリが既に登場し始めているという。彼は、C++で記述され、ブラウザで実行できるようにwasmに変換されたブラウザベースのデザインコラボレーションツールであるFigmaを例に挙げた。

「JavaScript は今後も存在し続けると思いますが、人々が書くコードの 20% が JavaScript で書かれ、残りの 80% が Web アセンブリにコンパイルされる他の言語に移行するという将来が考えられます」と同氏は述べた。

JavaScript の開発者である Eich 氏でさえ、JavaScript のライバルに対する彼のしばしば正当化された否定論である「常に JS に賭ける」を最近修正し、WebAssembly の影響を考慮して「常に JS (wasm が実行されるエンジン) に賭ける」としました。®

Discover More