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初心者がHooksを理解するためにコードを読んでみた
Search
polidog
December 19, 2020
Technology
0
520
React初心者がHooksを理解するためにコードを読んでみた
polidog
December 19, 2020
Tweet
Share
More Decks by polidog
See All by polidog
小さな開発会社が受託開発に力を入れる理由
polidog
0
52
小さな開発会社を作った理由
polidog
1
2.7k
小さな開発会社がWebサービスを作る理由
polidog
1
630
トランザクションスクリプトは何がダメなのか?
polidog
2
3.4k
object-mapperを作ってる話
polidog
0
330
2020年から始めるSymfonyフレームワーク
polidog
2
1.3k
はじめてのモダンPHP
polidog
0
630
ソフトウェア設計は難しくない
polidog
3
990
柔軟なアプリケーションをSymfonyで作るために考えている事
polidog
1
3k
Other Decks in Technology
See All in Technology
他チームへ越境したら、生データ提供ソリューションのクエリ費用95%削減へ繋がった話 / Cross-Team Impact: 95% Off Raw Data Query Costs
yamamotoyuta
0
160
人とAIとの共創を夢見た2か月 #共創AIミートアップ / Co-Creation with Keito-chan
kondoyuko
0
450
撤退危機からのピボット : 4年目エンジニアがリードする TypeScript で挑む事業復活 / crisis-to-pivot-4th-year-engineer-ts-relaunch
carta_engineering
2
750
ゴリラ.vim #36 ~ Vim x SNS ~ スポンサーセッション
yasunori0418
1
140
主要ライブラリの実例に学ぶ、TypeScriptで実現する型安全な座標定義
tiroljpn
1
220
toittaにOpenTelemetryを導入した話 / Mackerel APM リリースパーティ
cohalz
1
180
令和トラベルQAのAI活用
seigaitakahiro
0
390
Digitization部 紹介資料
sansan33
PRO
1
3.7k
それでもぼくらは貢献をつづけるのだ(たぶん) @FOSS4GLT会#002
furukawayasuto
1
240
Oracle Cloud Infrastructure:2025年5月度サービス・アップデート
oracle4engineer
PRO
0
260
スプリントゴールで価値を駆動しよう
takufujii
3
1.6k
VueUseから学ぶ実践TypeScript #TSKaigi #TSKaigi2025
bengo4com
3
5.3k
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Balancing Empowerment & Direction
lara
0
70
Faster Mobile Websites
deanohume
307
31k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
25
2.8k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
42
2.3k
Fireside Chat
paigeccino
37
3.5k
KATA
mclloyd
29
14k
Music & Morning Musume
bryan
47
6.5k
The Cult of Friendly URLs
andyhume
78
6.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Transcript
!QPMJEPH 3FBDUॳ৺ऀ͕)PPLTΛཧղ͢ ΔͨΊʹίʔυΛಡΜͰΈͨ 4IJ[VPLBKT
ࣗݾհ w !QPMJEPH w ύʔςΟʔϋʔυגࣜձࣾ w ϑϩϯτΤϯυΤϯδχΞ ݟश͍ w
ϲ݄ͪΐͬͱલʹύύʹͳΓ·ͨ͠
݁ 3FBDU)PPLTͷίʔυ·͡Α͘Θ͔Βͳ͍ʜ
ΞδΣϯμ ͦͦ)PPLTͱʁ 3FBDU)PPLTͷίʔυΛಡ͏ͱࢥ͖͔͚ͬͨͬ ࣮ࡍʹίʔυΛಡΜͰΈͨ
ͦͦ3FBDU)PPLTͱʁ
3FBDU)PPLTͱͳʹ͔ʁ w ؔίϯϙʔωϯτʹεςʔτΛͨͤΔͨΊͷΈ w ؔ৺ࣄΛ୯Ұͷؔ )PPLT ʹ·ͱΊΔ͜ͱ͕ग़དྷΔ w Ϋϥείϯϙʔωϯτͩͱॲཧ͕ࢄΒΓ͍͢ʁΘ͔Γʹ͍͘ʁ ਖ਼Ϋϥείϯϙʔωϯτॻ͍ͨ͜ͱͳ͍͔ΒΘ͔Βͳ͍ɻɻɻ
w ػցʹਓؒʹ͍͠Β͍͠ UIJT CJOE͋ͨΓͱ͔ʜ IUUQTKBSFBDUKTPSHEPDTIPPLTJOUSPIUNMDMBTTFTDPOGVTFCPUIQFPQMFBOENBDIJOFT
)PPLTͷछྨ w VTF4UBUFεςʔτͷཧ w VTF&⒎FDU෭࡞༻ΛҾ͖ى͜͢ɺYYYͷ͕มߋ͞Εͨ߹ʹͳʹ͔ॲཧΛ ͤ͞ΔΈ͍ͨͳͷ͕Ͱ͖Δ w VTF$BMMCBDLίʔϧόοΫͷϝϞԽ ৄ͘͠ެࣜυΩϡϝϯτಡΜͰ͍ͩ͘͞ IUUQTKBSFBDUKTPSHEPDTIPPLTSFGFSFODFIUNM
None
ίϯϙʔωϯτ͔ΒϩδοΫΛͨ͠ྫ
3FBDU)PPLTͷίʔυΛಡ͏ ͱࢥ͖͔͚ͬͨͬ
w ΧϯτΞοϓϘλϯ͕ԡ͞ΕΔͨ ͼʹදࣔ͞ΕΔ DPOTPMFMPH bSFOEFS` ͕࣮ߦ͞ΕΔ w ͔͠͠DPVOUͷͲΜͲΜ Ճࢉ͞Ε͍ͯ͘
ͲΜͳΈʹͳ͍ͬͯΔͷ͔ ؾʹͳΔ
࣮ࡍʹίʔυΛಡΜͰΈͨ
Ͳ͔͜ΒಡΉ͔ʁ w ӈͷΑ͏ͳΧϯτΞοϓ͢Δ αϯϓϧίʔυΛఆ w VTF4UBUFͷ࣮͕Ͳ͏ͳ͍ͬͯ Δͷ͔Λ֬ೝͯ͠ΈΔ
ࠓΘ͔͍ͬͯΔ͜ͱ VTF4UBUFͷܕใ͔ΒΘ͔Δ͜ͱ
VTF4UBUFͷؔͷ࣮Ͳ͜ʹ͋Δͷ͔ʁ QBDLBHFTSFBDUTSD3FBDU)PPLTKT IUUQTHJUJP+-Q%
3FBDU)PPLTKTSFTPMWF%JTQBUDIFS IUUQTHJUJP+-I:
3FBDU$VSSFOU%JTQBUDIFS SFBDUQBDLBHFTSFBDUTSD3FBDU$VSSFOU%JTQBUDIFSKT IUUQTHJUJP+-OW+
3FBDU*OUFSOBM5ZQFTKT IUUQTHJUJP+-OUB
͜͜·ͰͰཧղͰ͖ͨ͜ͱ w VTF4UBUFؔEJTQBUDIFSʹॲཧΛҕৡ͍ͯ͠Δ͚ͩ w EJTQBUDIFS3FBDU$VSSFOU%JTQBUDIFSDVSSFOUͷͷ͕ΘΕ͍ͯΔ
3FBDU$VSSFOU%JTQBUDIFSDVSSFOU Ͳ͜Ͱ͕ઃఆ͞Ε͍ͯΔͷ͔ʁ
3FBDU$VSSFOU%JTQBUDIFSDVSSFOUͰݕࡧͯ͠Έͨ
ͦͯͨ͠ͲΓண͍ͨ3FBDU'JCFS)PPLTOFXKT
͓ͦΒ͘͜͜Ͱ%JTQBUDIFS͕ઃఆ͞Ε͍ͯΔ SFOEFS8JUI)PPLT ؔ IUUQTHJUJP+-MD
)PPLT%JTQBUDIFS0O.PVOUΛݟͯΈΔ
)PPLT%JTQBUDIFS0O6QEBUFΛݟͯΈΔ IUUQTHJUJP+-#WP
͜͜·ͰͰཧղͰ͖ͨ͜ͱ w EJTQBUDIFS͓ͦΒ͘)PPLT%JTQBUDIFS0O.PVOUPS )PPLT%JTQBUDIFS0O6QEBUFΛ༻͢Δ w VTF4UBUFͷ࣮ଶNPVOU4UBUFPSVQEBUF4UBUF
ਖ਼͍͔֬͠ೝ͢ΔͨΊʹ εςοϓ࣮ߦͯ͠ΈΑ͏
None
None
͜͜·ͰͰ֬ೝͰ͖ͨ͜ͱ w ॳճͷඳը࣌ͷVTF4UBUFNPVOU4UBUF w ࠶ඳըͷ߹VTF4UBUFVQEBUF4UBUF
NPVOU4UBUFͳʹΛ͍ͯ͠Δͷ͔ʁ IUUQTHJUJP+-MD
NPVOU4UBUFͱͳʹ͔ʁ w )PPLͰঢ়ଶཧ͍ͯ͠ΔΆ͍ w EJTQBUDI"DUJPOͷͳ͔ͰԿ͔͠ΒΛߋ৽͢ΔΈΛ͍ͬͯΔ w ࣮ࡍͷΛม͑ΔͷRVFVFͷ෦ʁ
EJTQBUDI"DUJPOΛݟͯΈΑ͏
Α͘Θ͔Βͳ͍͗͢͞Δɾɾɾ
ͱΓ͋͑ͣVQEBUF4UBUFΈͯΈΕ ͳΜ͔Θ͔Δ͔ʁ
VQEBUF4UBUF࣮ଶVQEBUF3FEVDFSΛίʔϧͯ͠Δ͚ͩ
VQEBUF3FEVDFS·͡Θ͔ΒΜʜ
ίʔυಡΜ͚ͩͩ͡Ό Θ͔Βͳ͍ɾɾɾ
VQEBUF4UBUFͱEJTQBUDI"DUJPO ͷؔੑΛߟ͑ͯΈΔ
ΧϯτΞοϓϘλϯ ͕ԡ͞ΕΔ %JTQBUDIFS͕࣮ߦ͞Ε Δ VQEBUF4UBUF͕࣮ߦ͞ ΕΔ
%JTQBUDI"DUJPOͷίʔυൈਮ
VQEBUF3FEVDFSͰΛߋ৽͍ͯ͠ΔΆ͍Օॴ VQEBUFมͷ࣮ଶ͓ͦΒ͘%JTQBUDI"DUJPOͰઃఆͨ͠RVFVF
ͳΜͱͳ͘ཧղͨ͜͠ͱ w %JTQBUDI"DUJPOͰRVFVFʹ৽ͨͳΛηοτ͢Δ w VQEBUF3FEVDFSଆͰͦͷRVFVFΛड͚औΓΛมԽͤ͞Δ
·ͩཧղͷղ૾͕͍ʜ
ݶքΛײͨ͡ͷͰNJ[DIJେઌੜͷ ༁هࣄΛಡΜͰݟΔ IUUQTHJTUHJUIVCDPNNJ[DIJGBEGDEGCDBCDCEEE
࠷ॳ͔Β͜ͷهࣄಡΜͰ͓͚Α ͔ͨͬͨʜ
·ͱΊ w VTF4UBUFNPVOU4UBUFVQEBUF4UBUFͳͲঢ়گʹԠ࣮ͯ͡ࡍʹ࣮ߦ͢Δؔ ͕ҧ͏ w %JTQBUDI"DUJPO͔Βઌ3FBDUΛશମతʹ͋Δఔཧղͯ͠ͳ͍ͱίʔυΛ ಡΈղ͘ͷݫͦ͠͏ w ͔ͯಡΉඞཁ͋Δͷ͔ʁ w
͍͔ͭϦϕϯδ͍ͨ͠ʜ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ