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
PRO
December 19, 2020
Technology
620
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
React初心者がHooksを理解するためにコードを読んでみた
polidog
PRO
December 19, 2020
More Decks by polidog
See All by polidog
AIがコードを書く時代の ジェネレーティブプログラミング
polidog
PRO
3
1.1k
小さな開発会社を作った理由(再)
polidog
PRO
0
280
React Server ComponentsでAPI不要の開発体験
polidog
PRO
1
840
小さな開発会社が受託開発に力を入れる理由
polidog
PRO
0
530
小さな開発会社を作った理由
polidog
PRO
1
3.6k
小さな開発会社がWebサービスを作る理由
polidog
PRO
1
850
トランザクションスクリプトは何がダメなのか?
polidog
PRO
2
4k
object-mapperを作ってる話
polidog
PRO
0
410
2020年から始めるSymfonyフレームワーク
polidog
PRO
2
1.3k
Other Decks in Technology
See All in Technology
しくみを学んで使いこなそう GitHub Copilot app
torumakabe
2
240
Foxgloveについて 実際にExtensionを開発して公開するまでの話 / About Foxglove: The Story of Developing and Releasing an Extension
ry0_ka
0
210
あなたの『Site』はどこですか? — xREという考え方
miyamu
0
1.2k
タスクの複雑さでモデルを選ぶ ── Thompson Samplingで動かす“トークン/コスト最適化
satohy0323
0
340
Mastraエージェント、どのクラウドにデプロイする?
minorun365
PRO
2
180
クラウド上のデータ復旧で見落としがちな制約: 医療系 SaaS の BCP 設計から得た教訓
kakehashi
PRO
0
3.4k
Road to SRE NEXTの今までとこれから
hiroyaonoe
0
310
ADDF - ループエンジニアリングするフレームワークを作ったら/I Didn't Set Out to Build Loop Engineering, But ADDF Did
fruitriin
0
120
DMM.com 購入改善推進チーム におけるCodeRabbitを用いた レビューフロー改善の一例
ysknsid25
2
620
GuardrailからGovernanceへ~AIエージェント運用の次の課題~
sbspsy
2
270
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
180
AIと共生する開発者プラットフォーム:バクラクのモノレポ×マイクロサービス基盤
sakajunquality
2
3.4k
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
340
58k
Code Reviewing Like a Champion
maltzj
528
40k
New Earth Scene 8
popppiees
3
2.4k
Building AI with AI
inesmontani
PRO
1
1.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.3k
Color Theory Basics | Prateek | Gurzu
gurzu
0
390
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
340
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
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
͍͔ͭϦϕϯδ͍ͨ͠ʜ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ