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
Bundle Side Optimization in Future JavaScript -...
Search
Yuku Kotani
November 27, 2021
Programming
3.3k
2
Share
Bundle Side Optimization in Future JavaScript - JSConf JP 2021
JSConf JP 2021
Yuku Kotani
November 27, 2021
More Decks by Yuku Kotani
See All by Yuku Kotani
一億総業務改善を支える社内AIエージェント基盤の要諦
yukukotani
9
3.5k
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
6
2.8k
Scale out your Claude Code ~自社専用Agentで10xする開発プロセス~
yukukotani
11
5.6k
AI Coding Agent Enablement in TypeScript
yukukotani
21
18k
AI Coding Agent Enablement - エージェントを自走させよう
yukukotani
14
8.4k
Expoによるアプリ開発の現在地とReact Server Componentsが切り開く未来
yukukotani
3
880
React 19でお手軽にCSS-in-JSを自作する
yukukotani
6
1k
僕が思い描くTypeScriptの未来を勝手に先取りする
yukukotani
12
3.6k
Web技術を駆使してユーザーの画面を「録画」する
yukukotani
15
8.2k
Other Decks in Programming
See All in Programming
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
140
Oxlintのカスタムルールの現況
syumai
5
830
Zod v4 Codec でスキーマに型変換を埋め込む REST API 設計 #TSKaigi2026
ryutaro_yako
0
160
AI 時代のソフトウェア設計の学び方
masuda220
PRO
28
11k
[BalkanRuby 2026] Drop your app/services!
palkan
3
710
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
230
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
920
GitHub Copilot CLIのいいところ
htkym
2
1.2k
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
2
280
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
130
LLM Plugin for Node-REDの利用方法と開発について
404background
0
130
Modding RubyKaigi for Myself
yui_knk
0
690
Featured
See All Featured
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
260
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
520
Being A Developer After 40
akosma
91
590k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Mobile First: as difficult as doing things right
swwweet
225
10k
sira's awesome portfolio website redesign presentation
elsirapls
0
260
Visualization
eitanlees
152
17k
Music & Morning Musume
bryan
47
7.2k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Done Done
chrislema
186
16k
The untapped power of vector embeddings
frankvandijk
2
1.7k
Transcript
Bundle Side Optimization in Future JavaScript JSConf JP 2021 Yuku
Kotani (@MonchiFC)
2 Yuku Kotani (@MonchiFC) - Software Engineer @ Ubie Discovery
- AI https://ubie.app/ - TypeScript+Next.js / Kotlin+Spring Boot / GraphQL / Capacitor - Student (B3) @ - Blog https://yuku.dev 2
3 Web - - ECMAScript - - 3rd-party script
4 - (Dead Code Elimination) - (Mangling) - (Code Splitting)
- (Tree Shaking)
5 - (Dead Code Elimination) terser, Rollup - (Mangling) terser
- (Code Splitting) webpack, Rollup, Next.js, Nuxt - (Tree Shaking) webpack, Rollup
6 - (Dead Code Elimination) terser, Rollup - (Mangling) terser
- (Code Splitting) webpack, Rollup, Next.js, Nuxt - (Tree Shaking) webpack, Rollup
7 DDD
8 DDD
9 1st Approach: Dead Code Elimination
10 - - obj obj
11 TypeScript obj User obj isAdult getFullname getFullName
12 TS AST JavaScript TypeScript TS Compiler JS AST JavaScript
webpack JS AST DCE JavaScript terser JS ⾒
13 TS AST JavaScript TS Compiler JS AST JavaScript webpack
JS AST DCE JavaScript terser JS ⾒ TypeScript
14 TS AST JS JavaScript DCE SWC, Rome TypeScript
15 1 SWC Rome
16 2nd Approach: Tree Shaking
17 Tree Shaking JS/TS
18 Tree Shaking JS/TS A. - / `obj.method()` -
19
20 A. Bind-this operator
21 Bind-this operator func.bind() func.call() Stage-1 this JavaScript Bind Operator
https://yuku.dev/articles/2021-11-11/javascript-bind-this-op
22 Bind-this operator TypeScript This Parameter ⾒ This :: This
Parameter
23 2 ECMAScript
24 - class-based OOP - SWC Rome - ECMAScript JS-way
https://meety.net/matches/SwBiENIgCVFp