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
ユーザーが編集中の状態管理について考えよう
Search
Ryusou
September 15, 2021
3
6.6k
ユーザーが編集中の状態管理について考えよう
フロントエンドLT会 - vol.4 #frontendltのスライドです
Ryusou
September 15, 2021
Tweet
Share
More Decks by Ryusou
See All by Ryusou
Astro 3.0入門
nozaki
0
430
再実装 React Testing Library
nozaki
0
170
Hydrogenで 2022年〜を感じる
nozaki
0
570
microCMSでimgixに入門する
nozaki
0
1k
Jamstack Conf 2021を見てブログ構成を見直した話
nozaki
1
1.2k
はじめてのUniversal JavaScript
nozaki
1
2.2k
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Designing Experiences People Love
moore
138
23k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
520
Building Better People: How to give real-time feedback that sticks.
wjessup
365
19k
BBQ
matthewcrist
85
9.4k
Faster Mobile Websites
deanohume
305
30k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
247
1.3M
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Mobile First: as difficult as doing things right
swwweet
222
9k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
32
2.7k
Transcript
ɹʮϥΫεϑϩϯτΤϯυ-5ձWPMʯɹΓΎʔͦ͏ Ϣʔβʔ͕lฤूதzͷঢ়ଶཧ ʹ͍ͭͯߟ͑Α͏
ΓΎʔͦ͏!SZVTPV@NULI w ֶߍͷઌੜͬͯ·ͨ͠ʂ w גࣜձࣾNJDSP$.4'SPOUFOE&OHJOFFS%FWSFM ɹɹ3FBDUɾ5ZQF4DSJQU͕͖ɻࠓNJDSP$.4։ൃʹ·ͭΘΔΛ͠·͢ w ΠϕϯτΛӡӦ͍ͯ͠·͢✊ +BNTUBDLษڧձʮδϟϜδϟϜʂʂ+BNTUBDLʯ ࡛ۄݝ+BWB4DSJQUษڧձʮ4BJUBNBKTʯ
͍͖ͳΓͰ͕͢ɾɾɾ
͜Μͳܦݧ͋Γ·ͤΜ͔ʁʁʁ ࡞தͩͬͨจষ͕ফ͑ͯ ͍ͯΔͳ͋ɻŷŬŒŷŬŒ ϑΥʔϜೖྗதͰɺผλϒҠͬ ͨΒফ͑ͯΔΜ͚ͩͲʜʂʂ ͏ʔΜɺೖྗதͷେࣄͳ σʔλอଘΕͪΌͬͨ
ฤूதͷঢ়ଶͬͯʜʁ $SFBUF 6QEBUF %FMFUF FY ϒϩάΛॻ͘8&#ΞϓϦέʔγϣϯ هࣄΛ࡞ʂอଘPSެ։ ϘλϯΛԡ͢ هࣄΛߋ৽ʂอଘPSߋ৽ ϘλϯΛԡ͢
هࣄΛআʂআϘλϯ Λԡ͢
ฤूதͷঢ়ଶͬͯʜʁ $SFBUF 6QEBUF %FMFUF FY ϒϩάΛॻ͘8&#ΞϓϦέʔγϣϯ هࣄΛ࡞ʂอଘPSެ։ ϘλϯΛԡ͢ هࣄΛߋ৽ʂอଘPSߋ৽ ϘλϯΛԡ͢
هࣄΛআʂআϘλϯ Λԡ͢ ͜ͷؒͷঢ়ଶΛͲ͏σβΠϯ͢Δ͔͕େࣄͱ͍͏
NJDSP$.4ͷࣄྫ "1*εΩʔϚઃఆը໘ NJDSP$.4ͱ )FBEMFTT$.4 "1*ϕʔε εΩʔϚΛࣗ༝ࣗࡏ ʹ࡞
IUUQTNJDSPDNTJP
NJDSP$.4ͷࣄྫ "1*εΩʔϚઃఆը໘
NJDSP$.4ͷࣄྫ "1*εΩʔϚઃఆը໘ ͲͷΑ͏ʹzฤूதzͰ͋Δ͔Λ͑Δ͔ʁ
NJDSP$.4ͷࣄྫ ฤूதͰ͋Δ͜ͱΛೝͤͯ͋͛͞ΔσβΠϯ
NJDSP$.4ͷࣄྫ ޡૢ࡞Λ͙ɹΞϥʔτɾμΠΞϩάɾϦϩʔυݕ
NJDSP$.4ͷࣄྫ ͍Ͳ͜ΖΛߟ͑Δ Ͱɺೖྗͷ͋Δը໘Ͱશ࣮ͯͨ͠Βྑ͍ͷͰʜʁ ࢥߟఀࢭͨ͠ΓΎʔͦ͏͘Μ
NJDSP$.4ͷࣄྫ ͍Ͳ͜ΖΛߟ͑Δ Ͱɺೖྗͷ͋Δը໘Ͱશ࣮ͯͨ͠Βྑ͍ͷͰʜʁ ࢥߟఀࢭͨ͠ΓΎʔͦ͏͘Μ
NJDSP$.4ͷࣄྫ ͍Ͳ͜ΖΛߟ͑Δ ɾΓ͗͢ྑ͘ͳ͍ ɾΞϥʔτϢʔβʔͷಈ࡞Λ੍ޚ͢Δ ͍ΘΏΔϞʔυ ɾεςʔλεόʔϢʔβʹͱͬͯຊ࣭తͳใͰͳ͍έʔε͋Δɻ ˠϢʔβʔͷಈ࡞ΛࢭΊΔՁͷ͋Δͷͳͷ͔ʁ ˠϢʔβʔͷใΛࢧԉ͍ͯ͠Δ͔ʁ·ͨɺ͛ʹͳ͍ͬͯͳ͍͔ ɹΛߟ͑Δ
εςʔλεόʔͷେ͖͞ɺσβΠϯɺ৭ɺ͍Ͳ͜Ζ ɻ
࣮ฤɿαϯϓϧ3FBDU VTF$POUFYUͰཧ͢Δ w 3FBDUͰ3FEVYʜFUDͳͲঢ়ଶཧͷબࢶ͕ଟ͍ w ࠓճͷ࣮ͰVTF$POUFYUΛ༻ ɹVTF$POUFYU͚ͩͰΞϓϦέʔγϣϯͷঢ়ଶཧΦϨΦϨʹͳΓ͕ͪ ɹࠓճͷ͍࣮ܰΛ3FEVYͱ͔ͷঢ়ଶཧʹؚΊͨ͘ͳ͍ɻ ˠ੍͍͔ͭ͘Λ͏͚࣮ͯ͢Δɹ
VTF$POUFYUͷ༻࣌ͷ੍ $POUFYUΛ$PNQPOFOUʹFYQPSU͠ͳ͍ ɾ$POUFYU͕$PNQPOFOUʹFYQPSU͞Εͨ࣌Ͱঢ়ଶཧ͕ൃੜ͢Δ ɾ)PPLTʹ$POUFYUΛӅṭ ͳΜͳΒಉϑΝΠϧͰྑ͍͔ ɹ $POUFYU )PPLT
VTF)BT%JGG)PPLT $POUFYUॳظͱߋ৽ܥͰׂ IBT%J ff TFU)BT%J ff
ෆཁͳϨϯμϦϯάΛ͙ $POUFYU
VTF)BT%JGG)PPLT ΦϒδΣΫτͷൺֱ 5ZQF4DSJQUEFFQEJWF ʮՁԋࢉࢠͷಉҰੑʯ
VTF)BT%JGG)PPLT VTF& ff FDUͷΫϦʔϯΞοϓ ը໘ભҠ࣌ʹ4UBUFΛࣺͯΔ ϖʔδΛލ͍Ͱͷঢ়ଶཧ͠ͳ͍
VTF)BT%JGG)PPLT $PNQPOFOUଆ IBT%J ff Ͱ6*ͷग़͠Θ͚ɺEJTBCMFEͷ੍ޚͳͲΛߦ͏ɻ )PPLTͷͷΈΛ͏ɻ$POUFYUʹ͍ͭͯ$PNQPOFOUଆ Βͳ͍͜ͱ͕ॏཁ
·ͱΊ lϢʔβʔ͕ʮฤूதʯͷঢ়ଶཧॏཁ͚ͩͲɺຊےͰͳ͍ɻ ͦͷ͜ͱΛ೦಄ʹ͓͍ͯσβΠϯɾ࣮͢͠l #ZΓΎʔͦ͏
ࢀߟʹ͍͍ͤͯͨͩͨ͞ຊɾαΠτ 5IBOLTʂ ɾஶॻ ɹʰΦϒδΣΫτࢦ6*σβΠϯʱஶऀιγΦϝσΟΞגࣜձࣾɹ্ֶɺ౻Ҫଟ ɾαΠτ ɹʮ3FBDU$POUFYUΛFYQPSU͢ΔͷΞϯνύλʔϯͰͳ͍͔ͱߟ͑ΔʯIUUQTCMPHTUJOJOLBSUJDMFTEPOPUFYQPSUSFBDUDPOUFYU ɹʮ$POUFYU"1*ͱVTF3FEVDFSͰDVTUPNIPPLΛ࡞Δ࣌ͷςϯϓϨʔτʯIUUQTCMPHPKJTBOJPDPOUFYUSFEVDFSDVTUPNIPPL ɹʮਖ਼͘͠͏3FBDU$POUFYUʯIUUQT[FOOEFWZVUB@VSBBSUJDMFTSFBDUDPOUFYUBQJ ɹʮՁԋࢉࢠͷಉҰੑʯIUUQTUZQFTDSJQUKQHJUCPPLJPEFFQEJWFSFDBQFRVBMJUZ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂʂ !SZVTPV@NULI ΓΎʔͦ͏