Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
denoとtypescriptの関係について改めて考えてみる
Search
Kazuaki Higa
November 28, 2025
Technology
84
0
Share
denoとtypescriptの関係について改めて考えてみる
TSKaigi Hokuriku 2025 13:00 〜 13:30 (toggleルーム)の発表に使用した資料です。
Kazuaki Higa
November 28, 2025
More Decks by Kazuaki Higa
See All by Kazuaki Higa
TypeScriptの「型」をAIのスキルに 昇華させてみた件について
higak9
0
520
NumPyの計算が速い理由をGIL解放のメカニズム観点でちょっとだけ掘り下げてみた
higak9
0
130
Other Decks in Technology
See All in Technology
「速く作る」から「正しく作る」へ ─ 生成AI時代の開発フロー改革の ロードマップと実行 ─
starfish719
0
6.3k
Chart.js が簡単に使えるようになっていたので OGP 画像生成に使った話
kamekyame
0
140
AIを「創る」と「使う」の循環 — HRテックが実践するリアルなAI組織実装
taketo957
0
1.2k
APIテストとは?
nagix
0
180
大学生が本気でDatabricksを活用してDiscordサークルをデータ駆動させてみた
phantomjuju
1
340
ポスター発表&デモと総括 / Poster Presentations & Demonstrations and Summary
ks91
PRO
0
190
Unlocking the Apps
pimterry
0
190
チームで実践する AI-DLC 思考の軌跡を残すチェックポイント設計
belongadmin
0
2.2k
トークン数だけでは測れない — Claude Code 組織展開の効果検証から学んだこと
makikub
0
120
AI-DLCを活用した高品質・安全なAI駆動開発実践 / AI Driven Development with AI-DLC
yoshidashingo
0
110
運用を見据えたAIエージェント設計実践
amacbee
1
2.5k
新規事業を牽引する技術選定 〜フルスタックTypeScript開発の実践事例〜
nullnull
2
290
Featured
See All Featured
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
160
YesSQL, Process and Tooling at Scale
rocio
174
15k
Statistics for Hackers
jakevdp
799
230k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
480
Agile that works and the tools we love
rasmusluckow
331
21k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
380
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
210
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Paper Plane
katiecoart
PRO
1
51k
The SEO identity crisis: Don't let AI make you average
varn
0
480
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Documentation Writing (for coders)
carmenintech
77
5.4k
Transcript
denoとtypescriptの関係について 改めて考えてみる 株式会社iimon 比嘉 一晃
X:@higakazuaki9 • 比嘉 一晃(ひが かずあき) • 沖縄県出身 • 株式会社iimon エンジニア ◦
不動産DXのツールを提供 https://iimon.co.jp/ • 現在の担当業務の技術スタック ◦ vanilla-tsやReact、Django、AWS、 Google Cloud(Firebase)...etc • これまでの経験 ◦ Angular、React、Vue.js、Spring Boot、Django、Fast API、Ruby on Rails…etc • 性格 ◦ 人懐っこい、面倒くさがり、ねことビー ル好き(お酒の失敗は、、、色々ありま す) プロフィール
株式会社iimon
はじめに 本日はDenoについて お話していきます ...
Denoってなに? モダンなWeb開発のための オープンソースな JavaScript Runtime by 公式サイト(https://deno.com/)
Deno ・v8、Rust、tokioをベースとしたJavaScriptおよびTypeScriptの実行環境 ・JSConf EU 2018にて、Node.jsの作者Ryan Dahl氏の講演「Design Mistake in Node」 の中で挙げられたNode.jsに関する10の反省点を踏まえ、公表
・2024年10月にメジャーバージョンが初めてアップデートされ V2となる Overview
Denoってなに? 特徴 • TypeScriptゼロコンフィグでサポート • npmとnodeのfirst-classをサポート • Web標準APIのサポート • 開発に便利なツールの提供
• セキュアな実行環境
Denoってなに? 特徴 • TypeScriptゼロコンフィグでサポート • npmとnodeのfirst-classをサポート • Web標準APIのサポート • 開発に便利なツールの提供
• セキュアな実行環境
TypeScriptゼロコンフィグでサポート Denoをダウンロード&インストール(豊富なインストール方法) Mac: Shell、npm、Nix、asdf、vfox、Cargo、Docker Windows: PowerShell、npm、Scoop、Choco、Winget、vfox、Cargo、Docker Linux: Shell、npm、Nix、asdf、vfox、Cargo、Docker →インストール後、バージョンを確認( v8やTypeScriptのバージョンも確認可)
Installation
Version Change TypeScriptゼロコンフィグでサポート upgradeコマンドでバージョンを変更( v8やTypeScriptのバージョンも変更)
initコマンドでDenoの プロジェクトを構築 TypeScriptゼロコンフィグでサポート Initialize Project
初期の構成はシンプル deno.jsonでプロジェクト管理 TypeScriptゼロコンフィグでサポート Initialize Directory
Greet TypeScriptゼロコンフィグでサポート TypeScriptを書いて即実行 →TypeScriptのインストールやtsconfig.jsonの セットアップは一切不要(すぐ動きます)
Denoってなに? 特徴 • TypeScriptゼロコンフィグでサポート • npmとnodeのfirst-classをサポート • Web標準APIのサポート • 開発に便利なツールの提供
• セキュアな実行環境
npmとnodeのサポート Denoのインストール時にローカルに npmのレ ジストリのキャッシュを構築 deno.jsonでimportmapも定義可 npm
npmとnodeのサポート node Denoをインストール時にローカルに node api のレジストリのキャッシュを構築 トップレベルでawaitも利用可
npmとnodeのサポート package.json package.jsonの読み込みもサポート npm importと混在している場合は deno install で依存を解消
Denoってなに? 特徴 • TypeScriptゼロコンフィグでサポート • npmとnodeのfirst-classをサポート • Web標準APIのサポート • 開発に便利なツールの提供
• セキュアな実行環境
Web標準APIのサポート Fetch Denoが提供しているusers apiをfetchしてみた
Web標準APIのサポート Web Worker Web Workerを起動&ファイルを読み込み →ログに出力 ファイル読み込みには Deno APIのreadTextFileを 使用
Denoってなに? 特徴 • TypeScriptゼロコンフィグでサポート • npmとnodeのfirst-classをサポート • Web標準APIのサポート • 開発に便利なツールの提供
• セキュアな実行環境
開発に必要なツール Lint Denoに標準搭載されている Lint deno.jsonでルールをカスタムするこ とも可能
開発に必要なツール Lint Lint Error ・remove constructor(nothing super) ・super before using
this ・use const insteed
開発に必要なツール Test Denoに標準搭載されている Test JSRのパッケージも利用しつつ、手 軽にテストすることが可能 JSRとは... モダンなJS、TS開発のためのオー プンソースなパッケージレジストリ by
公式サイト: https://jsr.io/
開発に必要なツール Standalone Executable Deno.server APIで簡単なAPIの処理を書いてコ ンパイル
開発に必要なツール Standalone Executable コンパイル後のファイルを実行して サーバーにアクセス
開発に必要なツール Formatter Denoに標準搭載されている Formatter deno.jsonでルールをカスタムすることも可能
開発に必要なツール Formatter fmtコマンドでフォーマットの実行 エディタの設定でSave on Formatも可
Denoってなに? 特徴 • TypeScriptゼロコンフィグでサポート • npmとnodeのfirst-classをサポート • Web標準APIのサポート • 開発に便利なツールの提供
• セキュアな実行環境
セキュリティ Security Denoはデフォルトでファイル実行時にセ キュリティチェックが入る
セキュリティ Security ・ ・ ・ オプションをつけずにそのまま実行する とセキュリティチェック対象の項目の許可 を求められる
セキュリティ Security 拒否すると処理されずに終了する
セキュリティ Security --allow-all(または-A) 全ての権限を許可 --allow-read ファイル読み込みの許可 --allow-write ファイル書き込みの許可 --allow-net ネットワークへのアクセス許可
--allow-env envへのアクセス許可 …etc オプションをつけることで許可の チェックを省略できる
Denoってなに? 特徴 • TypeScriptゼロコンフィグでサポート • npmとnodeのfirst-classをサポート • Web標準APIのサポート • 開発に便利なツールの提供
• セキュアな実行環境 • 豊富なDeno CLI • トップレベルでのawait(async不要) • Deno APIを活用した効率的な開発 • Deno.jsonによる柔軟なプロジェクト管理 • JSRなどのモダンなパッケージの活用 モダンな TypeScriptの開発体験を 手軽にセキュアに提供
Denoで何をしよう 例えば... Web開発をしてみる
Vite-React with Deno Project Initialize and Build Viteを使ったReactプロジェクトの 構築をDenoで実施
Vite-React with Deno Server Start 開発サーバーを立ち上げて いつものHello React
Vite-React with Deno Custom App Appをカスタム Hooksなどを使っていつもの感じの Reactで開発
Vite-React with Deno Directory ディレクトリ構成もいつもの Vite-Reactプロジェクトと同じ感 じ →package.json、tsconfig、 vite.configなど
Denoで何をしよう 例えば... AIを活用した CLIを作ってみる
CLI Tool with Gemini API Weather App Gemini APIとdaxを使ってお天 気アプリを作成
CLI Tool with Gemini API Install and Exec deno installのnameオプションで名前をつ
けてCLIとして保存できる
Denoで何をしよう 例えば... データ分析してみる
Jupyter with Deno Setup Jupyter VSCode Jupyter extension https://marketplace.visualstudio.com/items?itemName=ms-toolsai.jupyter DenoでJupyter
Notebookを利用 するためのセットアップ
Jupyter with Deno Select Kernal DenoのKernelが選択できる
Jupyter with Deno Hello Jupyter Jupyter上でTypeScriptが動く
Jupyter with Deno penguins ちゃんとDataFrameが型付けされていることを確認 ペンギンデータで遊んでみる
Jupyter with Deno penguins headやtoRecodesなど基本的 なDataFrameの関数も利用可
Jupyter with Deno penguins dropNullsなどの欠損値補完 やdescribeでの集計データの 確認なども可能
Jupyter with Deno penguins Plotでデータをプロット
Jupyter with Deno penguins Plotでデータをプロット 基本的なデータ分析は十 分にできそう
まとめ Denoの使いどころ ・npm、Nodeとの互換性を活かしたプロジェクトの刷新 ・AIを利用したツール類の量産( MCP Toolなどとの連携) ・よくわからないコードをセキュアに実行 (特に生成AIで出されたものなど) ・TypeScriptを利用したスムーズなデータ分析 …etc
まだまだ方向転換などはあるかも
Appendix
Appendix ・デプロイまわり https://deno.com/deploy ・Fresh(Deno推しのシンプルWebフレームワーク) https://fresh.deno.dev/ ・WebAssembly https://docs.deno.com/runtime/reference/wasm/ ・Deno API Reference
https://docs.deno.com/api/deno/ ・Deno標準ライブラリ https://docs.deno.com/runtime/reference/std/ Denoにまつわる情報のリンク集
ご清聴ありがとうございました!