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
Vueが軽く&速くなる!Vapor Modeを試してみた
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
kouki.miura
August 25, 2026
Programming
34
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vueが軽く&速くなる!Vapor Modeを試してみた
Vapor Modeの概要と試してみた感想です。
kouki.miura
August 25, 2026
More Decks by kouki.miura
See All by kouki.miura
VueSapporo#4
koukimiura
0
27
Vue3_Capacitorでモバイルアプリ開発
koukimiura
0
29
Vue3.6.0-rc_CHANGELOG読み合わせ
koukimiura
0
31
医療DXって何?~電子カルテ標準仕様まで10分で理解する~
koukimiura
1
63
アプリ開発者が知っておくべき『トランザクション分離レベル』とRead Committed の罠
koukimiura
0
84
フルスタックTypeScript入門 ~Hono RPCとZodで実現する型共有~
koukimiura
0
64
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
160
ReactとVueは仲良くできるのか?
koukimiura
0
47
ポジティブアウトカムを用いた医療費削減の可能性について
koukimiura
0
89
Other Decks in Programming
See All in Programming
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.5k
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
560
Pythonの実行はどこまで賢くなったのか? CPythonとPyPyから見る最適化のしくみ
curekoshimizu
3
2.2k
Loosening the Reins: Go Generics Get More Flexible
kuro_kurorrr
0
340
まだ間に合う!今年の夏こそSchemeのマクロ展開器を完全理解!
omasanori
0
560
Go を使い始めて 2 ヶ月の学び / My first two months with Go
contour_gara
0
390
AI Engineeringは、AIプロダクトだけのものか? 〜AIがソフトウェアを作る時代の新しい当たり前〜 / No AI in your product. AI Engineering in your development.
rkaga
5
540
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.3k
源内ハンズオン概要編
hideg
0
220
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
170
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
180
Detecting Compromised CI with eBPF and Cilium Tetragon
lizrice
0
270
Featured
See All Featured
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
68
57k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
Typedesign – Prime Four
hannesfritz
42
3.1k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
450
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
510
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Chasing Engaging Ingredients in Design
codingconduct
0
290
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
450
Transcript
2026.08.24 / VueSapporo #4 Vueが軽く&速くなる!Vapor Modeを試してみた 三浦 恒樹 (MIURA KOUKI)
/ 医療ITエンジニア
自己紹介 - ドゥウェル株式会社 に所属(マネージャー) 医療ITエンジニア / 診療情報管理士 / 上級医療情報技師 /
医用画像情報専門技師 TypeScript / Vue.js / Node.js / Java / C# / PHP - 3兄弟の父、休日は習い事の送り迎えとか... - 参加している勉強会 札幌PHP勉強会 ゆるWeb勉強会 AWS初心者LT会in札幌 hokkaido.js さっぽろ医療IT勉強会 - コーディングBGM ラックライフ BLUE ENCOUNT SHANK Dizzy Sun Fist JBUG札幌 えびてく 札幌すごいAI会 函館本線沿線勉強会 JavaDO クラメソ札幌IT勉強会(仮) 札幌IT石狩鍋 VueSapporo ※運営 - Naru, 名前を呼ぶよ, 初めの一歩, 変わらない空 - Survivor, ポラリス
話すこと
Vueの画面更新のしくみ
Vueの画面更新のしくみ Virtual DOM (仮想DOM)
Vueの画面更新のしくみ Virtual DOMを使わない 軽量・高速フレームワークの登場
Vapor Modeとは何か
Vapor Modeとは何か
Vapor Modeとは何か
実際に動かしてみた感想 アプリ全体をVapor Modeにする。 Virtual DOM未使用=バンドルサイズも削減 “vapor”を追加する 一部のSFCをVapor Modeにする。 Virtual DOM使用あり=バンドルサイズは削減さ
れない “setup”を省略できる ※Composition API のみ (Options API は非対応) “template”にも書ける
実際に動かしてみた感想 10,000件のDIVを生成 そのうち1件を更新、 全件を更新 の時間を計測
実際に動かしてみた感想 従来のVue Vapor Mode
実際に動かしてみた感想 測定項目 従来のVue Vapor Mode 改善率 バンドルサイズ 65 KB 50
KB 23.0 % 初期表示 131 ms 116 ms 11.4 % 1/10,000件更新(10回平均) 22.97 ms 7.80 ms 66.0 % 全件更新(10回平均) 113.39 ms 111.40 ms 1.7 % ソフトウェアの使用時に一番多い、画面の一部を更新するユースケースでは、 Vapor Modeが圧倒的に速い!!
まとめ - - Vueの画面更新のしくみ - Vue3.5まで...Virtual DOMで差分計算後にReal DOM更新 / similar
to react. - Vue3.6から...Real DOMの更新が必要な個所を直接更新 / similar to svelte. Vapor Mode - 100% opt-in=使用を宣言する - HTMLテンプレートをコンパイル時に解析して、データ変更時にReal DOMを直接書き 換えられるようにしておくコンパイルモード - 動かしてみた - - Vueの既存システムと融合されている(書き方は変わらない) 3倍速い 注意点 - 未対応・非対応...Options API, app.config.globalProperties, getCurrentInstance(), @vue:xxx etc.
ご清聴ありがとうございました。