JavaScriptの第三の時代
(swyx.io)10年単位でJSに変化の波が来ており、2020年が第三の時代の始まりだという主張
1st 1997~2007 言語の始まり
2nd 2009~2019 言語の拡張 : Node、npm、ES5..
3rd 2020~ レガシーな前提を取り除き、ツール間のレイヤーを縮小し始める
→ CommonJSへの依存性を排除
→ JSツールはJSだけで作られるべきだという前提 : TypeScript、Deno、Relay
→ "Functional Core, Imperative Shell" から "Systems Core, Scripting Shell" へ移行
→ レイヤー縮小: Denoはテスト/フォーマット/リンティング/ビルドツールを内蔵
→ 10年前にはなかった多様なクラウド : Lambda から Glitch、Repl.it、Condesandbox、Github Codespaces、Stackblitzまで
→ Svelte はアニメーションから State Management までを Compiler に取り込む
→ ReactのMeta-Framework化およびクライアント/サーバー連携
→ Vue はViteプロジェクトで Unbundler 開発サーバーを作っている最中
第三世代のJSツールは
-
より高速で
-
ESM first
-
Collapsed Layers : 1つのツールが複数の仕事をうまくこなす
-
Typesafe-er : TypeScriptコードを特別な設定なしにどこでも使える
-
Secure-er : 依存関係や権限などの面で
-
Polyglot : 複数の言語を一緒に使う
-
Neo-Isomorphic : JSコードがビルド時、またはクライアントに届く前にサーバー上で先に実行される
-
これらすべての結果として、より良い開発者体験(高速なビルド、標準ツーリング)とユーザー体験(より小さなバンドル、迅速な機能配布)を提供するようになる
-
Site Scripting Toy から Full Application Platform へと変わるJavaScriptの最後の変化
-
JavaScriptは死ぬのか?
JSの寿命は2035年までだというGary Bernhardtの予想が当たるなら、第三世代はJavaScriptの最後になるだろう。
Brendan Eich は、JSが"Universal Virtual Machine"になりうるという考えから、"WASMがその座を占めることになるだろう"へと考えを改めた。
もし2人の意見が正しいなら、"もう望みはない"(原文は We're in the Endgame now = もう最終段階だ)
4件のコメント
JavaScript: The First 20 Years https://ja.news.hada.io/topic?id=1714 とあわせてご覧になるとよいです。
JSはあまりにも放任主義的な言語なので……最終的にはWASMが主流になってほしいと願っています。
WASMとJSは相互補完的に発展していくのではないでしょうか?
JSの天下は今後も続きそうですが、思った以上に悲観的な見通しですね。TSが出てきたからでしょうか..