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
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
410
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
クラウドエージェントは、 何がそんなに便利なのか / what makes cloud agents so useful
rkaga
5
770
AI時代のTerminal環境を UNIX哲学で設計・運用する
yasunori0418
1
340
ChromeでローカルLLM
ryu1013
0
200
AIがコードを書いてくれる時代、我々は何を確かめるのか
yosuke_furukawa
PRO
13
5.7k
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Kaigi on Rails 2026, Tokyo, Japan
marcoroth
2
410
AIで開発が速くなった先で、開発チームは何を目指すか
shihochan
1
2k
Kotlinize Is Not Just Converting to Kotlin
chigichan24
1
220
graphql-ruby を Spinel で速くしようとした話
mtsmfm
0
140
TS 7.0 で baseUrl が使えなくなった今、パスエイリアスをどうするか
bicstone
2
500
Kawaiicon: Kubernetes, it's no longer cool, but let's secure it anyway!
barnbarn
0
100
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
250
AI Augmentation Techniques with Liberty
ivargrimstad
1
360
Featured
See All Featured
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
900
Testing 201, or: Great Expectations
jmmastey
46
8.4k
Into the Great Unknown - MozCon
thekraken
41
2.8k
Mobile First: as difficult as doing things right
swwweet
225
10k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
The SEO Collaboration Effect
kristinabergwall1
1
620
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
We Have a Design System, Now What?
morganepeng
55
8.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
5.6k
Six Lessons from altMBA
skipperchong
29
4.6k
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