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
Viteの魅力とビルドプロセスに迫る / 20250423 Takuto Nishikiori
Search
SHIFT EVOLVE
PRO
July 23, 2025
Technology
660
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Viteの魅力とビルドプロセスに迫る / 20250423 Takuto Nishikiori
2025/4/23 第6回テクシェア
https://recruit.shiftinc.jp/career/library/id1430/
株式会社クロノス
錦織 拓人
SHIFT EVOLVE
PRO
July 23, 2025
More Decks by SHIFT EVOLVE
See All by SHIFT EVOLVE
AIが変えるDevSecOps―開発速度とセキュリティの両立へ / 20260714 Mitsutoshi Matsuo
shift_evolve
PRO
1
42
生成AI活用によるODC欠陥分析の分類高速化の実践と導入効果 / 20260703 Suguru Ishii
shift_evolve
PRO
2
120
次世代ランサムウェア対策の考察 / 20260704 Mitsutoshi Matsuo
shift_evolve
PRO
5
1.7k
40代で“やっとエンジニアになれた”――閉じた学びを開き、空の青さを知る / 20260628 Naoki Takahashi
shift_evolve
PRO
4
2.3k
フロントエンドイチゲキ実装 ― Figmaデザインと画面設計書からAIに実装・テストを書かせるための”下ごしらえ” / 20260627 Yusuke Mazuka
shift_evolve
PRO
0
150
高速な品質フィードバックを実現するAIテスト設計エージェント構築の要点 / 20260529 Suguru Ishii
shift_evolve
PRO
0
81
SREの仕事は「壊さないこと」ではなくなった 〜自律化していくシステムに、責任と判断を与えるという価値〜 / 20260515 Naoki Shimada
shift_evolve
PRO
1
310
ボトムアップの改善の火を灯し続けろ!〜支援現場で学んだ、消えないための3つの打ち手〜 / 20260509 Kazuki Mori
shift_evolve
PRO
2
1.2k
AI活用時代の事業判断高度化を導くエンジニアリング基盤 / 20260424 Atsushi Funahashi
shift_evolve
PRO
2
170
Other Decks in Technology
See All in Technology
はじめてのWDM
miyukichi_ospf
1
140
依頼文化をやめる日 EM視点で語るPlatform EngineeringとInclusive SRE / Discussing Platform Engineering and Inclusive SRE from an EM's Perspective
shin1988
4
4.8k
ヘルスケア領域における AI 活用と その安全性担保のための取り組み (Leveraging AI in Healthcare and Our Efforts to Ensure Its Safety) - Google I/O Extended Tokyo 2026, July 11, 2026
zettaittenani
0
240
Docker Desktop不要の時代が来る? WSL標準の「wslc」で Linuxコンテナを動かしてみた.
ueponx
0
860
なぜ人は自分のプロジェクトを 「なんちゃってアジャイル」と 自嘲するのか
kozotaira
0
270
ループエンジニアリングでE2Eテストを実践
noriyukitakei
0
320
Foxgloveについて 実際にExtensionを開発して公開するまでの話 / About Foxglove: The Story of Developing and Releasing an Extension
ry0_ka
0
190
型は壁、Rustでもバグを直すな、表現できなくせよ
nwiizo
12
1.9k
Claude Code 珍プレー好プレー
shinyasaita
0
300
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
3
3.2k
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
4.3k
FinOps X 2026 Recap from Engineer Side #JapanFinOps
chacco38
0
270
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
320
Optimising Largest Contentful Paint
csswizardry
37
3.8k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
410
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
410
A Modern Web Designer's Workflow
chriscoyier
698
190k
Bash Introduction
62gerente
615
220k
Skip the Path - Find Your Career Trail
mkilby
1
160
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.7k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
260
Transcript
Viteの魅力と ビルドプロセスに迫る 株式会社クロノス 錦織拓人
1 出身 兵庫県神戸市 所属企業 株式会社クロノス nishikiori takuto ひとこと Vue.jsを愛する 28歳エンジニア
新卒入社で現在6年目
2 私自身、特別な技術力は 持っていないです
2 ですが、私は“Vue.js” 好きです
前回、11月に行われたテクシェアにて Viteについての紹介とVue.jsについて 「愛」を伝えました。 前回の発表
2 3分じゃ足りなかった想い
Vue.jsに出会ってからの軌跡 1年目 電子契約書のアプリケーション開発にてVue.js初体験 シンプルで分かりやすい書き味 意欲的に勉強したい 2年目 Webサイトのリニューアル開発 Nuxt.jsを使った中規模開発 3年目 スマートフォン用Webサイトの改修
Vue.js v2 Composition API CompositionAPIを使ってるので、書き味がさらにバージョンアップ
Vue.jsに出会ってからの軌跡 4年目 健康保険管理システム Vue.js v2 自分で考え、コンポーネントの設計、ストア管理の設計をやるチャンス! 自分がやってきたこと、考え、経験をいかんなく発揮できた!! 5年目 EDIシステム開発 Vue.js
v2 → Vue.js v3 マイグレーション
Vue.jsに出会ってからの軌跡 4年目 健康保険管理システム Vue.js v2 自分で考え、コンポーネントの設計、ストア管理の設計をやるチャンス! 自分がやってきたこと、考え、経験をいかんなく発揮できた!! 5年目 EDIシステム開発 Vue.js
v2 → Vue.js v3 マイグレーション Vue.jsの2系の小規模システムを 3系へ移行するマイグレーション対応 作業はほぼ一人で行った。 この時の苦労と楽しさが発表の起点です。
2 Viteと出会った原点
Viteとの原点 Vue2 から Vue3へのマイグレーション対応 実装は経験を積んでいた。 でも、設定まで考えるのは初めて。 苦しんだのが2つ • Vue2に依存しすぎたライブラリの置き換え •
webpack.config.js、tsconfig.json、babel.config.jsなど ひしめき合う設定ファイルの調査と取り込み 加えて 起動に時間がかかる 修正の反映までがとても遅い
Viteとの原点 そんな時に思い出したのが 参加したVueカンファレンス VueFesJapan 2023 マイグレーションをより簡単にするために すぐプロジェクトの責任者に相談し、Viteを使えるように! 初めの目的は、複雑な設定への対処でしたが そのほかのオプションが素晴らしく、Vue.jsでの開発をより効率的に、 より素晴らしいものにしてくれたのがViteでした!
2 Viteの設計思想 ビルドプロセス
フロントエンド開発のビルドプロセスを超高速化することで 快適な開発体験を提供することです。 Viteについて Viteの生まれた背景・目的 シンプルな設定 すぐに開発できる 素早い初回起動 開発中 動作確認が効率的 全てが「技術者ファースト」で設計されています!
WebpackはViteに比べて柔軟性や拡張性に優れたツールです。 Vite以外のツール、Webpack 設定ファイルが複雑 初回起動 時間がかかる HMRが遅い 上記の弱点を抱えています。 しかし、
ViteとWebpackで比較 Vue.jsの2系から3系へマイグレーションの実体験から WebpackとViteの差を3つの観点から見ていきます。 1 2 3
2 Webpackの設定ファイル 多くない?
シンプルな設定ファイル webpack.config.js Webpackの設定ファイル 設定ファイル複雑すぎません? webpack.config.js(右図)にはたくさん記述が必要。 加えて、vue.config.jsやbabel.config.jsなどの 複数の設定ファイルも必要。 そもそも設定の把握に時間を取られます。 修正時に何を参照すればいいのか。 コーディングではない部分で、とても苦労する状態。
シンプルな設定ファイル vite.config.js Viteの設定ファイル すぐに開発始められる webpack.config.jsで設定されている内容とほぼ同じですが 記述量がなんと「1 /6 以下」に!! vite.config.js(右図)は本当にこれだけです! さらに、vue.config.jsやbabel.config.jsなども不要!
シンプルな設定ファイル vite.config.js Viteの設定ファイル すぐに開発始められる webpack.config.jsで設定されている内容とほぼ同じですが 記述量がなんと「1 /6 以下」に!! vite.config.js(右図)は本当にこれだけです! さらに、vue.config.jsやbabel.config.jsなども不要!
設定周りがノンストレス!
2 Webpackでの起動時間 長くない?
素早い初回起動 Viteって起動めちゃくちゃ早い! 置き換えて初めて気づいたんですが 逆にWebpackなんでそんな遅いん?
素早い初回起動 Viteって起動めちゃくちゃ早い! 置き換えて初めて気づいたんですが 逆にWebpackなんでそんな遅いん? Viteめっちゃすごいのが Webpackにはなかった発想で高速化を実現! キーワードは 依存関係の“事前バンドル”
素早い初回起動 前回起動した際の情報をキャッシュしておきます。 ViteはESBuildを活用し node_modules/.Vite/deps/vue.jsに 前回起動時にアプリ全体のコードを 一つのファイルにバンドルしておきます。 これを起動時に読み込むことで 爆速起動を実現しています。
Vite VS. Webpack さらにバンドルファイルも少ない! Viteでは 必要なmodulのみをバンドルする Webpackでは 全てのmodulをバンドルしてしまう
Vite VS. Webpack 具体的にどれくらい違うか。 デモ環境を用意して、ViteとWebpackの起動時間の差を比べてみました。
Vite VS. Webpack 具体的にどれくらい違うか デモ環境を用意して、ViteとWebpackの起動時間の差を比べてみました Vite Webpack 264ms ≒ 0.26秒
5160ms ≒ 5.16秒 なんと、起動時間が20分の1!!
2 ソース変更してから 反映おそくない?
Webpackでのファイル変更時あるある 過去には保存 → 待機 → 動作確認に5〜10分も費やすプロジェクトもあ り これが超絶ストレス。 ちょっとしたスタイル変更やコンポーネントの文言修正に対して 2〜3分のバンドル待ちが発生していました。
Vue.js唯一の嫌いなところでした。
Viteでの変更は即! HMRとは VIteではHMR(Hot Module Replacement)と呼ばれる技術により ファイルの変更を画面に反映する速度がとても早いんです! ファイルの変更時にページ全体をリロードせず、 変更されたモジュールだけを差し替えます。 アプリケーションの「状態(state)」を維持したまま、 変更を即反映してくれます。
保存 → 即反映されるので、“ノンストレスな開発体験”を実現してくれる。
Vite VS. Webpack Round2 具体的にどれくらい違うか。 デモ環境を用意して、ViteとWebpackのHMRの時間も比べてみました。 まずはWebpackから
※発表時は動画でしたが、スライドでデモをお見せします!
※発表時は動画でしたが、スライドでデモをお見せします!
※発表時は動画でしたが、スライドでデモをお見せします!
※発表時は動画でしたが、スライドでデモをお見せします!
Vite VS. Webpack Round2 続いてVite Webpackは12秒かかりました。
※発表時は動画でしたが、スライドでデモをお見せします!
※発表時は動画でしたが、スライドでデモをお見せします!
Vite VS. Webpack Round2 0.2秒!!!???
Vite VS. Webpack Round2 ViteとWebpackではまさかの60倍の差 それだけ、開発にかけることのできる時間が増える! より効率的に、より素晴らしい 開発体験を提供してくれます!
ViteとWebpackで比較 Vue.jsの開発体験を向上させてくれるVite これらのポイントが、Viteに惹かれた部分です! 1 2 3
2 好きな技術に対して
好きな技術に対して 特別な技術は持ってないですが 好きな技術を伝えるために、さらに深く学ぶ 発表準備でさらにのめり込む機会となりました。 そして何より・・・ 「どうすれば、このViteの素晴らしさが伝わるか?」を真剣に考える時間でした。 「伝える」を意識し、さらに深く技術を知ろうとするプロセスによって 改めて自分の知識も深まったように思います。 技術をみんなで クロノスのバリューに「みんなが、バージョンアップ」があります。
自分が学び、誰かに伝える。誰かの学びを、聞かせてもらう。 その連鎖で今日の発表だけでなく、これからも続けていきたいとより強く感じまし た。
None