Deno、JavaScriptとTypeScriptのためのセキュアランタイム
(docs.google.com)-
Ryan Dahl が OpenJS World 2020 で Deno の現在について発表したスライドと動画 [12枚、27分]
-
C++、Rust、Go がコンパイル言語を進化させている一方で、
近年の多くのソフトウェア開発は Python、Ruby、JavaScript のような動的言語によって進められてきた。
- Node.js が JavaScript をサーバー上で利用可能にした
→ 2010年代の PHP
→ 複数のクラウドベンダーがサポート
→ すべてのフロントエンドフレームワーク(React、Vue、Angular)が Node を使ってバンドル
- JS エコシステムの大きな変化
→ ArrayBuffer、async / await、ES Modules、WASM、TypeScript
- Deno
→ Node のように、JavaScript をブラウザの外で実行できるようにする
→ Node のように、Chrome の V8 JavaScript VM を利用
→ Node のように、オープンソースで MIT ライセンス
→ C++ の代わりに Rust で書かれている
→ Testing、Linting、Formatting、ドキュメント生成などのツールを内蔵
→ 他のソフトウェアに埋め込み可能 : deno_core、rusty_v8
→ Web 標準 API を利用し、できるだけ多くの開発者が使えるように設計されている
- Deno はコマンドラインスクリプトのためのブラウザ
→ インターネットからコードを直接インポートして実行できるようにし、プログラミングを簡単にする
import { serve } from "https://deno.land/std@0.56.0/http/server.ts";
→ Deno は、ユーザーの同意がある場合にのみ OS にアクセスできる安全なサンドボックス
- Deno の埋め込み : deno_core
→ スタンドアロン実行ファイルとしてリリースされているが、Rust Crate として埋め込むことも可能
→ 想定されるユースケース
-
DB が Map Reduce 関数のために JavaScript を使用
-
Lambda@Edge や Cloudflare Workers などのサーバーレス製品群
-
Electron スタイルの GUI アプリケーションなど
-
ロードマップ
→ バグ修正、バグ修正、バグ修正
→ Deno API の安定化
→ 今後の作業
→ deno_core をさらに便利にすること
→ GPU API をサポートして機械学習を支援
→ deno compile を通じて JS をバイナリ実行ファイルにする
1件のコメント
Deno 1.0 リリース - https://ja.news.hada.io/topic?id=2075
Deno のオープンソース開発プロセスの可視化 - https://ja.news.hada.io/topic?id=361
From Node to Deno - https://ja.news.hada.io/topic?id=2103