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
0
560
React初心者がHooksを理解するためにコードを読んでみた
polidog
PRO
December 19, 2020
Tweet
Share
More Decks by polidog
See All by polidog
小さな開発会社を作った理由(再)
polidog
PRO
0
170
React Server ComponentsでAPI不要の開発体験
polidog
PRO
1
520
小さな開発会社が受託開発に力を入れる理由
polidog
PRO
0
190
小さな開発会社を作った理由
polidog
PRO
1
3.2k
小さな開発会社がWebサービスを作る理由
polidog
PRO
1
710
トランザクションスクリプトは何がダメなのか?
polidog
PRO
2
3.8k
object-mapperを作ってる話
polidog
PRO
0
360
2020年から始めるSymfonyフレームワーク
polidog
PRO
2
1.3k
はじめてのモダンPHP
polidog
PRO
0
680
Other Decks in Technology
See All in Technology
巨大モノリスのリプレイス──機能整理とハイブリッドアーキテクチャで挑んだ再構築戦略
zozotech
PRO
0
210
Axon Frameworkのイベントストアを独自拡張した話
zozotech
PRO
0
220
AIを前提に、業務を”再構築”せよ IVRyの9ヶ月にわたる挑戦と未来の働き方 (BTCONJP2025)
yueda256
1
790
AIエージェントによるエンタープライズ向けスライド検索!
shibuiwilliam
4
630
ZOZOTOWNカート決済リプレイス ── モジュラモノリスという過渡期戦略
zozotech
PRO
0
490
重厚長大企業で、顧客価値をスケールさせるためのプロダクトづくりとプロダクト開発チームづくりの裏側 / Developers X Summit 2025
mongolyy
0
160
AS59105におけるFreeBSD EtherIPの運用と課題
x86taka
0
210
国産クラウドを支える設計とチームの変遷 “技術・組織・ミッション”
kazeburo
4
5.5k
Quarkusで作るInteractive Stream Application
joker1007
0
160
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
6.5k
Tomcatが起動しない!?SecureRandomと乱数デバイスの罠
fujikawa8
1
110
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
750
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
BBQ
matthewcrist
89
9.9k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
680
A Modern Web Designer's Workflow
chriscoyier
697
190k
How to Ace a Technical Interview
jacobian
280
24k
A better future with KSS
kneath
239
18k
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
͍͔ͭϦϕϯδ͍ͨ͠ʜ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ