Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
React は次の10年を生き残れるか:3つのトレンドから考える
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yuka Ooka
July 18, 2025
Programming
20k
49
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
React は次の10年を生き残れるか:3つのトレンドから考える
React Tokyo ミートアップ #7 のメイントークのスライド。
https://react-tokyo.connpass.com/event/358171/
Yuka Ooka
July 18, 2025
More Decks by Yuka Ooka
See All by Yuka Ooka
Hono + Inertia + React で LP を構築した話
oukayuka
2
370
React 使いじゃなくても知っておきたい教養としての React
oukayuka
36
11k
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
3
1.7k
Reactのトレンドよくわからん
oukayuka
17
9.7k
とある個人開発 PWA の SEO 奮戦記
oukayuka
8
3.2k
Recomposeとは何だったのか、またはHooksが開けたパンドラの箱についての考察 / Recompose Funeral March
oukayuka
3
6k
(Ruby使いのための)Scalaで学ぶ関数型プログラミング
oukayuka
0
440
Other Decks in Programming
See All in Programming
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
130
プロダクトコードからライブラリの境界を見つける
elmetal
PRO
0
120
Kotlinの15年とServer-Side Kotlin
n_takehata
1
140
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
490
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
3
2.3k
AI が書く Go コードの品質を劇的に向上させる Linter: “declscope”
mpyw
0
490
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
990
Web Framework Benchmark Battle 2026, Any%
a_matsuda
2
1.2k
Workers Cache を知る
syumai
0
360
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
170
すこし踏み込む CancellationToken
htkym
2
1.7k
CodeRabbitの効果検証と過ごしてみた3ヶ月
armondando
0
230
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
Odyssey Design
rkendrick25
PRO
2
870
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
460
Evolving SEO for Evolving Search Engines
ryanjones
0
320
Balancing Empowerment & Direction
lara
6
1.3k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
A better future with KSS
kneath
240
18k
Test your architecture with Archunit
thirion
2
2.4k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
Between Models and Reality
mayunak
4
490
Transcript
େԬ༝Ղʢ͘ΔΈׂΓॻʣ 3FBDU࣍ͷΛ ੜ͖ΕΔ͔ ͭͷτϨϯυ͔Βߟ͑Δ
ݱࡏɺ3FBDUͷμϯϩʔυͿͬͪ͗Γ npm trends, Jul. 2025
+4։ൃऀʹΑΔγΣΞͰҎ্τοϓΛҡ࣋ State of JavaScript 2024: Front-end Frameworks
͜ͷҐ͜Ε͔Βઌ൫ੴ͔ 🔹ʮࣄຐଟ͠ʢ͜͏͡·͓͓͠ʣʯ ҙຯɿࣄ͕͏·͍͍ͬͯ͘Δͱ͖΄ͲɺࢥΘ͵ࡂ͍͕͛ ى͜Γ͍͢ɻ 🔹ʮཅۃ·ΕӄʹసͣʢΑ͏͖Θ·Ε͍ΜʹͯΜͣʣʯ ҙຯɿࣄ͕ۃͳঢ়ଶʹୡ͢Δͱɺͦͷస͕ى͜Δͱ͍͏ ͜ͱɻ౦༸ࢥʹ͓͚Δӄཅʹج͍ͮͨݴ༿ɻ
ຊͷςʔϚ 3FBDU͕όʔδϣϯͱͯ͠ॳΊͯެ։͞Εͨͷ݄ɻ ʮʹҰݱΕΔήʔϜνΣϯδϟʔʯͱݴΘΕͭͭɺొ͔Β͏ɻ ϑϩϯτΤϯυϑϨʔϜϫʔΫͱͯ͠ѹతͳγΣΞΛތΔ3FBDU͕ͩɺ ͦ͜ʹͳ͍ͷ͔ɻ 3FBDU͕ਐΜͰ͍Δํਖ਼͍͠ͷ͔ʁɹ Βͳ͍ʹτϨϯυ͔ΒऔΓ͞Ε͍ͯͳ͍͔ʁ ͦΕΛߟ͍͖͍ͯͨ͠ɻ
ࣗݾհ େԬ༝Ղ !PVLBZVLB ৽ਓͱઌഐͷରܗࣜͰΘ͔Γֶ͘͢Δ 3FBDUڭຊʰΓ͋ΫτʂʱγϦʔζͷ࡞ऀɻ ݱͷΤϯδχΞͷޱίϛͰධΛݺͼɺ γϦʔζྦྷܭച্ສઍ෦Λಥഁʂ ࠷৽3FBDU ʹରԠɺ3FBDU3PVUFS
/FYUKTʹΑΔ࡞ྫΛ๛ʹܝࡌͨ͠ վగ ൛ΛʹϦϦʔεɻ IUUQTPVLBZVLBCPPUIQN Ͱൢചதʂ ˞3FBDU5PLZP ϝϯόʔʹߍਖ਼ʹ͝ڠྗ͍͖ͨͩ·ͨ͠ 🙇 ങͬͯͶ ͓͓ ͓͔Ώɹ͔
ࠓ͜ΜͳηογϣϯΓ·͢ IUUQTXBLFDBSFFSDPOOQBTTDPNFWFOU
KTGSBNFXPSLCFODINBSLΛ͝ଘͰ͔͢ʁ IUUQTHJUIVCDPNLSBVTFTUKTGSBNFXPSLCFODINBSL ͜Εෳͷ+BWB4DSJQUϑϨʔϜϫʔΫʢछ ྨʣΛରͱͨ͠γϯϓϧͳϕϯνϚʔΫͰ͢ɻ͜ͷ ϕϯνϚʔΫͰɺϥϯμϜԽ͞ΕͨΤϯτϦΛؚΉ େ͖ͳςʔϒϧʢ ߦʣΛ࡞͠ɺϨϯμϦϯά ࣌ؒΛؚΉ༷ʑͳૢ࡞ʹ͔͔Δ࣌ؒΛଌఆ͠·͢ɻ
ϦΞΫςΟϏςΟͷύϑΥʔϚϯε ⋮
ϝϞϦޮ ⋮
సૹαΠζ
݁ɿ 3FBDUͷύϑΥʔϚϯε ओཁϑϨʔϜϫʔΫͷதͰ ΄΅ ࠷ԼҐ ͷ෦ྨ
ଞͷϑϨʔϜϫʔΫͷؒͰ͕͍ͬͯΔτϨϯυ͔Β3FBDU͕औΓ͞Ε͍ͯΔɻ 3FBDUͷΞʔΩςΫνϟެ։ֵ࣌৽తͰɺଞͷϑϨʔϜϫʔΫ͕ͧͬͯ͜ ਵͨ͠ɻ ͔ͦ͠͠ͷޙͷ3FBDUҎ֎͔Βੜ·ΕͨΠϊϕʔγϣϯ͕ଞͷϑϨʔϜϫʔΫʹ ·Δ͍ͬΆ͏ɺ3FBDUͦΕʹਵͤͣզ͕ಓΛาΜͰ͍ΔͨΊɺޙൃʹͲΜ ͲΜൈ͔Εͯݱࡏͷϙδγϣϯʹ·Ͱసམͨ͠ɻ ͳͥͳͷ͔ʁ
ͻͱͭΊͷτϨϯυ 4JHOBMT ʢ'JOF(SBJOFE3FBDUJWJUZʣ
Ծ%0.͍ʁ wԾ%0.πϦʔͷอ࣋ϝϞϦ༻ྔΛ૿Ճͤ͞Δ wॳճϨϯμϦϯά࣌ͷπϦʔߏஙɺ࠶ϨϯμϦϯά࣌ͷࠩݕग़ͷܭࢉίετ
4PMJE+4͕ൃ໌ͨ͠4JHOBMTͱ wίϯϙʔωϯτͷ࠶ϨϯμϦϯάΛཁͣ͞ɺ6*ΛϐϯϙΠϯτͰมߋ͢Δ wͷมߋ͕ଈ࠲ʹ6*ʹө͞ΕΔ wґଘͷ͕શࣗಈʢ˞3FBDUͷΑ͏ͳґଘྻͷઃఆ͕ෆඞཁʣ wuseStateɺuseEffectϥΠΫͳΠϯλʔϑΣʔε Ծ%0.Λ༻͍ͣɺ͖Ίࡉ͔ͳϦΞΫςΟϏςΟΛ࣮ݱ͢Δ͘͠Έ (fine-grained)
!QSFBDUTJHOBMT
4JHOBMTͷ։ൃऀମݧͷΑ͞ w࠶ϨϯμϦϯάͷ݅ɺґଘྻɺϝϞԽͷ͔ٞΒ։์͞ΕΔ wʮίϯϙʔωϯτͷதͰͷΈ༻Մʯʮ੍ޚߏจͷதͰ༻ෆՄʯ ͷΑ͏ͳ3VMFTPG)PPLTʹറΒΕͳ͍ wίϯϙʔωϯτͷதͰ֎Ͱؔͳ͑͘ΔͷͰɺάϩʔόϧͳ ঢ়ଶཧʹར༻Ͱ͖Δ
3FBDUҎ֎4JHOBMTΛಋೖࡁΈʗಋೖ༧ఆ w 1SFBDUʢ݄ɺ!QSFBDUTJHOBMTʣ w 2XJLWʢ݄ʣ w "OHVMBSWʢ݄ʣ w -JUʢ݄ɺ!MJUMBCTTJHOBMTʣ w
4WFMUFWʢ݄ʣ w 7VFKT7BQPS.PEFʢ։ൃதʣ
3FBDUͲ͏ͳͷʁ wٞఏى͞Ε͍ͯΔ͕ɺ·ͩԿਐల͍ͯ͠Ͱͳ͍ w3FBDU$PNQJMFSʹྗ͍ͯ͠ΔͨΊɺۙͰಋೖͦ͠͏ʹͳ͍ w!QSFBDUTJHOBMTSFBDU͕͍͓ͪ͏͑Δ͕ʜʜ
;ͨͭΊͷτϨϯυ ;FSP3VOUJNF
ͳͥ͜Μͳʹ͕ࠩ͋Δͷ͔ʁ
3FBDUͷసૹαΠζ͕େ͖͍ཧ༝ w࠷ॳʹେྔͷϥϯλΠϜίʔυΛؙ͝ͱૹΔઃܭ wԾ%0.ߏங͓Αͼࠩݕग़γεςϜɺεέδϡʔϥͳͲ ࠷ݶͷಈ࡞ʹඞཁͳίʔυ͕ඇৗʹଟ͍ wޙํޓੑΛ༏ઌͯ͠ɺաڈͷ"1*ʹґଘͨ͠ϨΨγʔͳίʔυΛ ࣺ͖ͯΕ͍ͯͳ͍
4WFMUFίϯύΠϥ wϏϧυ࣌ʹ4WFMUFίϯϙʔωϯτΛ७ਮͳ+BWB4DSJQUʹม wϑϨʔϜϫʔΫݻ༗ͷϥϯλΠϜίʔυΛ΄ͱΜͲؚ·ͳ͍
4WFMUFΞϓϩʔνͷਵऀ w4PMJE+4 w2XJL w7VFKT7BQPS.PEFʢ։ൃதʣ ˞ίϯύΠϧ͢Δ͕ɺ࠷খݶͷϥϯλΠϜΛอ࣋
3FBDUͲ͏ͳͷʁ wͦΕ͔ΒԿͷԻࠫଡͳ͍ͷͰɺࠓޙಋೖ͞ΕΔ͜ͱͳͦ͞͏ wͰͳ͚ΕࣗಈϝϞԽπʔϧʹʮ3FBDU$PNQJMFSʯͱ͍͏ ໊લ͚ͭͳ͍ΑͶʜ w)PPLTϦϦʔεޙ͜Μͳ͜ͱݴ͍ͬͯͨ
ΈͬͭΊͷτϨϯυ ;FSP+BWB4DSJQU
;FSP+BWB4DSJQUΛചΓʹ͢ΔϑϨʔϜϫʔΫ
ʮ;FSP+BWB4DSJQUʯͱɺϒϥβʹૹ৴͞ΕΔ+BWB4DSJQUίʔυ͕ σϑΥϧτͰθϩͱ͍͏͜ͱɻͦͷඞཁ͕ͳ͍ͷʹ+BWB4DSJQUίʔυΛ ૹΓ͚ͭͯ)ZESBUJPO͠ͳ͍ɻ ϖʔδαʔόͰϨϯμϦϯά͞Εɺ੩తͳ)5.-ͱ$44͚͕ͩಧ͘ɻ +BWB4DSJQU͕ඞཁͳγʔϯͰɺ։ൃऀ͕໌ࣔతʹΦϓτΠϯͨ͠෦ ͚ͩΛݸผʹ৴͢Δʢ˞ޙड़ʣ +4ϑϨʔϜϫʔΫͰ+4Λθϩʹ͢Δͱʁ
*TMBOET"SDIJUFDUVSF ੩తͳίϯϙʔωϯτ܈ͷதʹɺಈతͳཁૉ ΛؚΉίϯϙʔωϯτΛͦ͜ʹු͔Ϳʮౡʯ ͱͯ͠ಠཱͤ͞ɺݸผʹඞཁͳ)ZESBUJPO Λߦ͏ઃܭύλʔϯɻ ৴ɾ࣮ߦ͞ΕΔ+BWB4DSJQU͕খ͍ͨ͞Ίɺ ίϯςϯπओಋܕͷαΠτʹ͓͍ͯѹత ͳύϑΥʔϚϯεΛൃش͢Δɻ
2XJL 3FTVNBCMFͱʁ ॳظϩʔυ࣌L#΄ͲͷϥϯλΠϜ͚ͩΛμϯϩʔυɻϢʔβʔૢ࡞͕ى ͖ͨॠؒʹ͚ͩඞཁίʔυΛऔΓدͤͯॲཧΛ࠶։͢Δٕज़ɻ )ZESBUJPOΛશʹഉআɻཁૉΛΫϦοΫͨ͠ͱ͖ͳͲʹɺνϟϯΫԽ͞Εͨ ࠷খݶͷ+BWB4DSJQUίʔυ͕μϯϩʔυ͞Ε࣮ߦ͞ΕΔɻ ͋ΒΏΔλΠϓͷ8FCΞϓϦέʔγϣϯʹରԠͨ͠ɺΦʔόϔουΛۃݶʹ· Ͱ࠷খԽͰ͖ΔΞʔΩςΫνϟɻ
3FBDUͲ͏ͳͷʁ 4FMFDUJWF)ZESBUJPOʢඞཁͳ෦͔Βͷॱ࣍ϋΠυϨʔγϣϯʣɺ 4USFBNJOH)5.-ʢ)5.-Λׂɺॱ࣍ૹ৴ʣ3FBDUʹͯ ରԠࡁΈɻ ͦΕҎ্ͷ͜ͱϨΨγʔίʔυͱͷ݉Ͷ߹͍ɺ%9ͷѱӨڹ͕ ߟ͑ΒΕΔͨΊকདྷతͳಋೖͷՄೳੑɺ΄΅θϩͩΖ͏ɻ
3FBDUͷࠓޙ ύϑΥʔϚϯεͰѹతʹྼΔ3FBDU͕τοϓΛҡ࣋Ͱ͖͍ͯΔͷ ɺύϑΥʔϚϯεΑΓ%9Λ༏ઌͤ͞Δ͕࢟։ൃऀʹࢧ࣋͞Εͯ ͖ͨͨΊɻ ͔͠͠࠷ۙͷ3FBDU34$ͳͲɺෳࡶ͞Λ૿͠ͳ͕ΒҰൠͷ։ൃऀ ʹͱͬͯͷ%9্ʹԿΒߩݙ͠ͳ͍ٕज़ͷಋೖʹ݂ಓΛ্͛ͯ ͍Δɻ ύϑΥʔϚϯεͰѹ͢Δ৽ਐͷϑϨʔϜϫʔΫ͕%9Ͱ͍͍ͭ ͖ͯͨͱ͖ɺͨͯ͠3FBDUͷԦ࠲҆ହͰ͍ΒΕΔͷ͔ɻ
None