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
20260204_Midosuji_Tech
Search
Takuya Yonezawa
February 04, 2026
Technology
230
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20260204_Midosuji_Tech
Takuya Yonezawa
February 04, 2026
More Decks by Takuya Yonezawa
See All by Takuya Yonezawa
20260516_SecJAWS_Days
takuyay0ne
4
710
20260422_Midosuji_Tech
takuyay0ne
2
71
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
550
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
700
20260129_CB_Kansai
takuyay0ne
1
370
20260126_JAWS_Osaka
takuyay0ne
1
60
こんな時代だからこそ! 想定しておきたいアクセスキー漏洩後のムーブ
takuyay0ne
4
800
セキュリティは全員参加!_JAWSのイベントサイトで脅威モデリングを学んでみよう!
takuyay0ne
0
220
20250920_ServerlessDays
takuyay0ne
9
4.4k
Other Decks in Technology
See All in Technology
攻撃者視点で考えるDetection Engineering
cryptopeg
3
2k
2026TECHFRESH畢業分享會 - Lightning Talk - E起 See See : 電商推薦讀心術? 數據說了算
line_developers_tw
PRO
0
1.3k
脆弱性対応、どこで線を引くか
rymiyamoto
1
420
Flow 不死:AI 時代 DevOps 的不變本質
cheng_wei_chen
2
340
ぼっちではじめた登壇が「51名」「241件」の発信に化けた
subroh0508
1
250
Oracle Cloud Infrastructure:2026年6月度サービス・アップデート
oracle4engineer
PRO
0
130
FPGAの開発コンペでZephyrを使ってみた
iotengineer22
0
140
秘密度ラベル初心者が第1歩でつまづかないための「設計・運用」ポイント
seafay
PRO
0
240
新しいUbuntu/GNOMEが使いたいからXからWaylandへ移行頑張ってるの巻 2026-06-20
nobutomurata
0
150
Kiro Ambassador を目指す話
k_adachi_01
0
110
AI駆動開発を通して感じた、 AI時代のデザイナーの役割変化
whisaiyo
4
2.3k
2026TECHFRESH畢業分享會 - Lightning Talk - 打造精準高效的 MCP 設計模式與測試實務
line_developers_tw
PRO
0
1.3k
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
96
14k
KATA
mclloyd
PRO
35
15k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Thoughts on Productivity
jonyablonski
76
5.2k
First, design no harm
axbom
PRO
2
1.2k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
970
Optimising Largest Contentful Paint
csswizardry
37
3.7k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
390
4 Signs Your Business is Dying
shpigford
187
22k
How to build a perfect <img>
jonoalderson
1
5.7k
Transcript
1 © 2026 Japan Digital Design, Inc. Takuya Yonezawa 2026.02.04
Reactぱふぉちゅー Midosuji Tech#8
2 © 2026 Japan Digital Design, Inc. 米澤 拓也 Software
Engineer Technology & Development Div. and Corporate Culture室 プロフィール SWEだが、案件でやってるシステムのAWSリソースが増えまくって インフラ専任になりつつある人(現在 800リソースくらい on CDK) Community Builder (Serverless) 2023~ 一言:何故かバズった takuya_y0ne
3 © 2026 Japan Digital Design, Inc. VercelさんがReactのべスプラSkillを公開した https://github.com/vercel-labs/agent-skills/tree/main/skills/react-best-practices
4 © 2026 Japan Digital Design, Inc. CRITICAL / HIGH
/ MEDIUM / LOW パフォーマンスへのインパクトごとにプラクティスが整理されている
5 © 2026 Japan Digital Design, Inc. 私の独断で気になるものを紹介
6 © 2026 Japan Digital Design, Inc. 1 バレルを避けよう CRITICAL
7 © 2026 Japan Digital Design, Inc. バレル? ディレクトリ内のコンポーネントや 関数をバレルファイル(index.ts)で
まとめてエクスポートするデザイン パターン 別ディレクトリからインポートする 際には、バレルファイル1つを参照す ればOKとなる → コードがスッキリする! バレルファイル
8 © 2026 Japan Digital Design, Inc. バレル? ディレクトリ内のコンポーネントや 関数をバレルファイル(index.ts)で
まとめてエクスポートするデザイン パターン 別ディレクトリからインポートする 際には、バレルファイル1つを参照す ればOKとなる → コードがスッキリする! バレルファイルが 無い 時 import文をいっぱい書かないといけない
9 © 2026 Japan Digital Design, Inc. バレル? ディレクトリ内のコンポーネントや 関数をバレルファイル(index.ts)で
まとめてエクスポートするデザイン パターン 別ディレクトリからインポートする 際には、バレルファイル1つを参照す ればOKとなる → コードがスッキリする! バレルファイルが ある 時 impor文を1つにまとめられてスッキリ!
10 © 2026 Japan Digital Design, Inc. バレル? ディレクトリ内のコンポーネントや 関数をバレルファイル(index.ts)で
まとめてエクスポートするデザイン パターン 別ディレクトリからインポートする 際には、バレルファイル1つを参照す ればOKとなる → コードがスッキリする! バレルファイルが ある 時 import文をいっぱい書かないといけない
11 © 2026 Japan Digital Design, Inc. 「バレル良さそうやんけ!」 と思ったそこの貴方、少し待って
12 © 2026 Japan Digital Design, Inc. 巨大ライブラリからバレルインポートすると話が少し違う バレル バレル
バレル コンポーネント Check X Menu バレル経由のインポートだと 余計なファイルまで読み込んでしまう
13 © 2026 Japan Digital Design, Inc. 巨大ライブラリからバレルインポートすると話が少し違う コンポーネント Check
X Menu 直インポートだと余計なファイルを 読み込まないので早い
14 © 2026 Japan Digital Design, Inc. バレルでの一括エクスポートを使うなら… ↓ 高凝集にする
(= exportされているファイルがまとめて使われる状態)
15 © 2026 Japan Digital Design, Inc. 【所感】 TypeScriptはビルドするとJavaScriptに依存部分だけ よしなにバンドルしてくれるので
コードの読みやすさ vs ローカルでの開発時の速さ/ビルドの早さ なのかなと思う
16 © 2026 Japan Digital Design, Inc. 2 async/awaitのパラレル化 CRITICAL
17 © 2026 Japan Digital Design, Inc. 例えば APIからデータを拾ってきたうえで画面描画を行うケース
18 © 2026 Japan Digital Design, Inc. 良いパターン いまいちなパターン すべて直列で処理を行う
並列で処理を行う fetchUser() fetchPosts() fetchComments() Time fetchUser() fetchPosts() fetchComments() Time
19 © 2026 Japan Digital Design, Inc. http://localhost:3000/async-await 【デモ】 http://localhost:3000/async-await-all
20 © 2026 Japan Digital Design, Inc. APIコールが別のAPIコールに依存するパターンは better-allなどを使おう Promiseの依存関係が増えた時にチューニングが辛くなる
https://github.com/shuding/better-all
21 © 2026 Japan Digital Design, Inc. better-all が 無い
時 better-all が ある 時
22 © 2026 Japan Digital Design, Inc. 3 モジュールの条件付き読み込み HIGH
23 © 2026 Japan Digital Design, Inc. 機能が 必要になった/呼び出された タイミングでモジュールを読み込む
↓ データ転送量の削減 初期レンダリングの高速化
24 © 2026 Japan Digital Design, Inc. パフォーマンス向上って観点だと正しい気もするが、 コードのリーダビリティが。。
25 © 2026 Japan Digital Design, Inc. Suspense + Lazy
Loadを使って 描画速度を向上させること自体は昔からあるし、アンチパターンではない
26 © 2026 Japan Digital Design, Inc. 条件付き読み込みは用法用量を守ろう 過剰な採用はリーダビリティを損なうことに
27 © 2026 Japan Digital Design, Inc. 4 データが多いときの content-visibility
HIGH
28 © 2026 Japan Digital Design, Inc. content-visibility? CSSのプロパティの1つ ▪
autoに設定すると。。 画面外(viewport外)に配置される コンポーネントのレイアウト処理を スキップさせることができる → 画面の初期描画速度が向上する (LCP : Largest Contentful Paint) (※) DOMツリー上には存在するので、 Accessibility/SEO的な問題はない View Port レイアウト計算やる レイアウト計算やる レイアウト計算やる レイアウト計算やる レイアウト計算スキップ レイアウト計算スキップ レイアウト計算スキップ
29 © 2026 Japan Digital Design, Inc. http://localhost:3000/content-visibility 【デモ】 http://localhost:3000/no-content-visibility
30 © 2026 Japan Digital Design, Inc. 5 まとめ
31 © 2026 Japan Digital Design, Inc. フロントエンドはユーザーとの信頼関係を築くレイヤー 処理が早いとユーザーは嬉しい!!!
Thank you. 32 © 2026 Japan Digital Design, Inc.