15
Sep
9/15 に第39回ZEALOT勉強会を実施しました。
今回のテーマは、「Deno の紹介」ということで、Node.js の作者であるライアン・ダールによって作成され、2018年にリリースされた JavaScript, TypeScript のランタイム環境である Deno の紹介をしていただきました。
Deno とは?
Deno is a simple, modern and secure runtime for JavaScript, TypeScript and WebAssembly that uses V8 and is built in Rust.
- JavaScript の runtime の一つ。特徴として JavaScript、TypeScript が使える。
- Node.js と同じく V8エンジン使っているが、Rust で V8 を囲むようなレイヤー部分がある。それは Deno が色々な API を利用できるようにするためと、TypeScript をそのまま実行できる環境を作るため。
Deno の特徴
- ブラウザで使う JavaSctipt の API と互換性のある API を提供してる。
- デフォルトでセキュア。
- ファイルの読み書き、ネットワークへの接続の実行時などで許可が必要。
- 設定せず TypeScript が使える。
- Node.js だと設定やパッケージのインストールが必要。
- 一つの実行ファイルを提供するだけ。
- Node.js の場合は、パッケージインストール時の npm のように別のバイナリが必要だったりする。
- 色々なツールが提供されている。
- deno info, deno fmf
- Deno での動作が保証されているレビュー済み (監査済み) の標準モジュールのセットがある。
module の説明
- Deno で module を使いたい時に、モジュールのあるURLを書くことで利用できる。(Github や他のサーバーのものも使える)
- Node.js だと npm のサーバに登録されたもの。
ビルトインツールなど
- deno install
- Deno がインストールされている環境で実行可能なファイルを作ってくれる。
- deno compile
- Deno の runtime も全て入った Deno の無い環境でも動くファイルを作ってくれる。
- deno task
- 複雑な作業を、タスク化して実行することができる。
- deno test
- テスト用の環境も別のパッケージを使う必要がない。
まとめ
- いつもの時間だと予定が合わない方が多いとのことで、試しでお昼時間に30分と短縮バージョンでの開催でした。出席者も多く大盛況でした!
- Node 製作者が、Node を作った時の10個の後悔を踏まえて開発したとのこと(deno は node のアナグラムらしい、、、)で、色々と改善されていてよさそうですよね!今後の動向も気になります!