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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
SHIFT EVOLVE
PRO
July 23, 2025
Technology
1
470
Viteの魅力とビルドプロセスに迫る / 20250423 Takuto Nishikiori
2025/4/23 第6回テクシェア
https://recruit.shiftinc.jp/career/library/id1430/
株式会社クロノス
錦織 拓人
SHIFT EVOLVE
PRO
July 23, 2025
Tweet
Share
More Decks by SHIFT EVOLVE
See All by SHIFT EVOLVE
DevOpsエージェントで実現する!! AWS Well-Architected(W-A) を実現するシステム設計 / 20260307 Masaki Okuda
shift_evolve
PRO
2
96
AIアジャイル開発部 部門紹介 / 20260304 Mikito Kobayashi
shift_evolve
PRO
1
41
変化に強い組織 ─ 組織カルチャーを「管理」から「協調・創造」に ─ / 20260304 Yoshiharu Tsukuda
shift_evolve
PRO
1
30
プロジェクトマネジメントをチームに宿す -ゼロからはじめるチームプロジェクトマネジメントは活動1年未満のチームの教科書です- / 20260304 Shigeki Morizane
shift_evolve
PRO
1
120
PMBOK第8版は第7版から何が変わったのか(PMBOK第8版概要解説) / 20260304 Takeshi Watarai
shift_evolve
PRO
0
88
社内でAWS BuilderCards体験会を立ち上げ、得られた気づき / 20260225 Masaki Okuda
shift_evolve
PRO
1
160
AWS re:Invent2025を通じて見えた次世代教育 / 20260225 Masaki Okuda
shift_evolve
PRO
0
28
急成長した企業のエンジニアマネジメント~7,000人超のモチベーションを保つ3つの秘訣~ / 20260220 Ryusuke Ito
shift_evolve
PRO
2
97
私たち準委任PdEは2つのプロダクトに挑戦する ~ソフトウェア、開発支援という”二重”のプロダクトエンジニアリングの実践~ / 20260212 Naoki Takahashi
shift_evolve
PRO
3
500
Other Decks in Technology
See All in Technology
管理者向けGitHub Enterpriseの運用Tips紹介: 人にもAIにも優しいプラットフォームづくり
yuriemori
0
140
越境する組織づくり ─ 多様性を前提にしたチームビルディングとリードの実践知
kido_engineer
2
110
vLLM Community Meetup Tokyo #3 オープニングトーク
jpishikawa
0
150
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
22k
オレ達はAWS管理をやりたいんじゃない!開発の生産性を爆アゲしたいんだ!!
wkm2
3
190
LLM のプロダクト導入における開発の裏側と技術的挑戦
recruitengineers
PRO
1
110
ブラックボックス観測に基づくAI支援のプロトコルのリバースエンジニアリングと再現~AIを用いたリバースエンジニアリング~ @ SECCON 14 電脳会議 / Reverse Engineering and Reproduction of an AI-Assisted Protocol Based on Black-Box Observation @ SECCON 14 DENNO-KAIGI
chibiegg
0
150
8万デプロイ
iwamot
PRO
2
110
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
95k
DX Improvement at Scale
ntk1000
3
300
Security Diaries of an Open Source IAM
ahus1
0
200
「ヒットする」+「近い」を同時にかなえるスマートサジェストの作り方.pdf
nakasho
0
130
Featured
See All Featured
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
980
The Curse of the Amulet
leimatthew05
1
9.6k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
270
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
87
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
240
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
260
HDC tutorial
michielstock
1
500
Six Lessons from altMBA
skipperchong
29
4.2k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
140
RailsConf 2023
tenderlove
30
1.4k
Mobile First: as difficult as doing things right
swwweet
225
10k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
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