今更ながらDenoを始めた感想
Deno はNode.jsに代わる新しいJavaScript/TypeScriptランタイムとしてよく耳にすることはあった。
しかし、実際に学びはじめてみると、こんなにメリットがあった。
- TypeScriptを標準サポートしてくれている
- ネットワーク, read/write のパーミッションシステムが備わっていてセキュア(デフォルトは拒否)
- ESMデフォルト対応
- fmt, lint が備わっている
- npm を使わない
- トップレベルでの async/await がデフォルトで可能
これまで検証や調査でJavaScriptのコードを npm init → npm install xxx みたいにやる必要だったのが、Go みたいにで `import hoge from 'https://....'` みたいな感じでURLで引っ張ってくるのが斬新。
依存モジュールの管理どうするの?って疑問も deps.ts か import maps で解消可能だった。
本番利用で想定できるケースがあまり思いつかないが、TSでサクッとREPLでコード書いたり、簡単なCLIツールを書く時はDenoを間違いなく使いそうだなと感じている。
ただ、esm.sh をはじめとする npm パッケージとの互換性や、各エディタに用意されているプラグインの利便性はNode.jsには少し及ばずこれからな印象(自分の使い方が間違っているだけかも知れないが...)