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
React は次の10年を生き残れるか:3つのトレンドから考える
Search
Yuka O’oka
July 18, 2025
Programming
49
19k
React は次の10年を生き残れるか:3つのトレンドから考える
React Tokyo ミートアップ #7 のメイントークのスライド。
https://react-tokyo.connpass.com/event/358171/
Yuka O’oka
July 18, 2025
Tweet
Share
More Decks by Yuka O’oka
See All by Yuka O’oka
React 使いじゃなくても知っておきたい教養としての React
oukayuka
22
6.6k
来たるべき 8.0 に備えて React 19 新機能と React Router 固有機能の取捨選択とすり合わせを考える
oukayuka
3
1.4k
Reactのトレンドよくわからん
oukayuka
17
9.6k
とある個人開発 PWA の SEO 奮戦記
oukayuka
8
3.1k
Recomposeとは何だったのか、またはHooksが開けたパンドラの箱についての考察 / Recompose Funeral March
oukayuka
3
5.9k
(Ruby使いのための)Scalaで学ぶ関数型プログラミング
oukayuka
0
370
Other Decks in Programming
See All in Programming
20260315 AWSなんもわからん🥲
chiilog
2
170
Laravel Nightwatchの裏側 - Laravel公式Observabilityツールを支える設計と実装
avosalmon
1
210
へんな働き方
yusukebe
5
2.8k
コーディングルールの鮮度を保ちたい / keep-fresh-go-internal-conventions
handlename
0
230
KagglerがMixSeekを触ってみた
morim
0
180
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
350
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
420
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
610
守る「だけ」の優しいEMを抜けて、 事業とチームを両方見る視点を身につけた話
maroon8021
3
1.3k
AI 開発合宿を通して得た学び
niftycorp
PRO
0
170
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
manfredsteyer
PRO
0
140
クライアントワークでSREをするということ。あるいは事業会社におけるSREと同じこと・違うこと
nnaka2992
1
360
Featured
See All Featured
Exploring anti-patterns in Rails
aemeredith
2
290
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
Docker and Python
trallard
47
3.8k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
My Coaching Mixtape
mlcsv
0
84
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.2k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
500
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
77
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
130
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