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
0
51
denoとtypescriptの関係について改めて考えてみる
TSKaigi Hokuriku 2025 13:00 〜 13:30 (toggleルーム)の発表に使用した資料です。
Kazuaki Higa
November 28, 2025
Tweet
Share
Other Decks in Technology
See All in Technology
セキュリティについて学ぶ会 / 2026 01 25 Takamatsu WordPress Meetup
rocketmartue
1
300
Agile Leadership Summit Keynote 2026
m_seki
1
590
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
4
1.2k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.3k
GSIが複数キー対応したことで、俺達はいったい何が嬉しいのか?
smt7174
3
150
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
210
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3k
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
220
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
MCPでつなぐElasticsearchとLLM - 深夜の障害対応を楽にしたい / Bridging Elasticsearch and LLMs with MCP
sashimimochi
0
160
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
170
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
550
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Claude Code のすすめ
schroneko
67
210k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
430
Build your cross-platform service in a week with App Engine
jlugia
234
18k
We Are The Robots
honzajavorek
0
160
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
110
Context Engineering - Making Every Token Count
addyosmani
9
650
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.5k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
240
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
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にまつわる情報のリンク集
ご清聴ありがとうございました!