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
ReactHooks_CustomHookAndEncapsulation
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
sonatard
July 29, 2019
Programming
860
7
Share
ReactHooks_CustomHookAndEncapsulation
sonatard
July 29, 2019
More Decks by sonatard
See All by sonatard
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
580
Iteratorでページネーションを実現する
sonatard
5
1.4k
Goのエラースタックトレースの歴史と今後
sonatard
19
17k
Go 1.22のEnhanced ServeMux chiから移行できるのか?
sonatard
5
680
GraphQL実践ノウハウv2
sonatard
17
3.1k
プロトコル、インターフェースとしてのGraphQL
sonatard
4
2.3k
GraphQL実践ノウハウ/graphql-knowhow
sonatard
41
12k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
Go1.18から導入されるnetip package/netip-package
sonatard
3
1.3k
Other Decks in Programming
See All in Programming
[RubyKaigi 2026] Require Hooks
palkan
1
220
運転動画を検索可能にする〜Cosmos-Embed1とDatabricks Vector Searchで〜/cosmos-embed1-databricks-vector-search
studio_graph
0
410
Agentic Elixir
whatyouhide
0
390
iOS機能開発のAI環境と起きた変化
ryunakayama
0
190
Don't Prompt Harder, Structure Better
kitasuke
0
780
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
3k
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.5k
ドメインイベントでビジネスロジックを解きほぐす #phpcon_odawara
kajitack
3
790
Kubernetes上でAgentを動かすための最新動向と押さえるべき概念まとめ
sotamaki0421
3
610
事業会社でのセキュリティ長期インターンについて
masachikaura
0
260
ハーネスエンジニアリングにどう向き合うか 〜ルールファイルを超えて開発プロセスを設計する〜 / How to approach harness engineering
rkaga
24
14k
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
1k
Featured
See All Featured
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
Git: the NoSQL Database
bkeepers
PRO
432
67k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.5k
GraphQLとの向き合い方2022年版
quramy
50
15k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
150
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
770
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
Navigating Weather and Climate Data
rabernat
0
170
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
490
Transcript
1 3FBDU)PPLTΧελϜϑοΫͱΧϓηϧԽ 3FBDUKTNFFUVQॳ৺ऀܴ-5ձ !TPOBUBSE
D Technologies ͦͳଠ @sonatard • Linux Server and Network Engineer
# System C • Wireless LAN Module Simulator # Cݴޠ • TCP/IP protocol stack on RTOS • TCP Offload Engine # Go • Google App Engine # TypeScript • React+Redux
• R e a c t H o o k
s ͱ • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 1 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 2 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 3 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 4 • · ͱ Ί
4 3FBDU)PPLT w 3FBDU)PPLTɺ3FBDUͰՃ͞Εͨ৽ػೳɻ w TUBUFͳͲͷ3FBDUͷػೳΛɺΫϥεΛॻ͔ͣʹ͑ΔΑ͏ʹͳΔɻ
5 3FBDU)PPLT͕ఏڙ͢Δؔ w 3FBDU)PPLTɺVTF4UBUFҎ֎ʹVTF&⒎FDUɺVTF$POUFYUͳͲ߹ܭݸͷެ͕ࣜఏڙ ͢Δ͕ؔଘࡏ͢Δɻ w ࠓճVTF4UBUFΛத৺ʹઆ໌͠·͢ɻ
6 ΧελϜϑοΫͱΧϓηϧԽ w ΧελϜϑοΫͱಠࣗͷϑοΫΛ࡞͢Δ͜ͱɻ w ίϯϙʔωϯτ͔ΒϩδοΫΛநग़͢Δ͜ͱͰɺϩδοΫͷ࠶ར༻ੑ্͕͢Δɻ w ঢ়ଶͱ࣮ͷৄࡉΛΧϓηϧԽͰ͖ɺίϯϙʔωϯτʹඞཁͳͱΠϯλʔϑΣʔεͩ ͚Λެ։͢Δ͜ͱ͕ՄೳͱͳΔɻ
• R e a c t H o o k
s ͱ • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 1 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 2 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 3 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 4 • · ͱ Ί
8 ΧελϜϑοΫͷ࣮ྫ࣮ߦΠϝʔδ w ίϯϙʔωϯτؒͷϖʔδωʔγϣϯΛ࣮͢ΔVTF-PDBM)JTUPSZΧελϜϑοΫɻ w ϒϥβͷIJTUPSZ"1*ͷΑ͏ͳͷɻ ࣍ ࣍ճ Δճ ϥεττοϓϥετ
Δճ ཤྺΛফڈ
9 ΧελϜϑοΫͷ࣮ྫW w ΧελϜϑοΫະ༻ίϯϙʔωϯτͱϩδοΫ͕Ұॹʹهड़͞Ε͍ͯΔ
• R e a c t H o o k
s ͱ • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 1 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 2 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 3 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 4 • · ͱ Ί
11 ΧελϜϑοΫͷ࣮ྫW w ίϯϙʔωϯτ͔ΒϩδοΫΛΧελϜϑοΫʹ͢Δɻ w ίϯϙʔωϯτ͕ඞཁͳใ͚ͩΛฦ͠ɺଞΧελϜϑοΫʹӅṭ͢Δɻ w ίϯϙʔωϯτ͕ඞཁͳͷ w ɺDVSSFOU1BHF
w ૢ࡞ɺ5PQɺ/FYUɺ#BDLɺ-BTUɺ3FTFU w ˞ཤྺҰཡσόοάҎ֎ʹෆཁͳͷͰฦ͞ͳ͍ɻ
12 ΧελϜϑοΫͷ࣮ྫW w ΧελϜϑοΫ͔ΒෆཁͳIJTUPSZฦͣ͞ɺඞཁͳͱૢ࡞͚ͩΛฦ͢ɻ
13 ΧελϜϑοΫͷ࣮ྫW w ίϯϙʔωϯτ͕7JFXʹϑΥʔΧεͨ͠ίʔυͱͳΔ
• R e a c t H o o k
s ͱ • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 1 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 2 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 3 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 4 • · ͱ Ί
15 ΧελϜϑοΫͷ࣮ྫW w ࠓճͷૢ࡞ʹରͯ͠ΠϯλʔϑΣʔεΛఆٛ͢Δɻ
16 ΧελϜϑοΫͷ࣮ྫW w Ұ࿈ͷૢ࡞͕ؔ࿈͕͋Δ͜ͱ͕Θ͔Γ͘͢ͳΔɻ w ଞͷίϯϙʔωϯτʹରͯ͠ૢ࡞Λ͢͜ͱ༰қʹͳΔɻ
• R e a c t H o o k
s ͱ • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 1 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 2 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 3 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 4 • · ͱ Ί
18 ΧελϜϑοΫͷ࣮ྫW w 4UBDL -*'0 ͷσʔλߏΛΧελϜϑοΫͱͯ͠Γग़͢ɻ w ΧελϜϑοΫଟஈߏ͕ՄೳͳͷͰɺVTF-PDBM)JTUPSZ͔ΒVTF4UBDLΛݺͿɻ
19 ΧελϜϑοΫͷ࣮ྫW w VTF-PDBM)JTUPSZ͕4UBDLͷσʔλߏΛҙࣝͤͣɺը໘ભҠͷ੍ޚ͚ͩΛϩδοΫͱ͠ ͯ࣋ͭΑ͏ʹͳΔɻ
• R e a c t H o o k
s ͱ • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 1 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 2 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 3 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 4 • · ͱ Ί
21 ΧελϜϑοΫͷ࣮ྫW w ίϯϙʔωϯτͷ࠶ඳըΛճආ͢ΔͨΊʹɺVTF$BMMCBDLͱVTF.FNPΛར༻͢Δɻ w VTF-PDBM)JTUPSZΛར༻͍ͯ͠Δίϯϙʔωϯτ͕࣮ߦ͞ΕΔͨͼʹɺίʔϧόοΫఆ ͕ٛ࠶࣮ߦ͞ΕΔ͜ͱΛճආ͢Δɻ w MPDBM)JTUPSZΛผͷίϯϙʔωϯτʹ͍ͯ͠Δ߹ͳͲʹҙຯ͕͋Δɻ
• R e a c t H o o k
s ͱ • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 1 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 2 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 3 • Χ ε λ Ϝ ϑ ο Ϋ ͷ ࣮ ྫ v 4 • · ͱ Ί
23 ΧελϜϑοΫͱΫϥε w ͜ͷܗʹԿ͔ݟ͕֮͑͋ΔɻɻɻΫϥεʂ w Ϋϥε w ঢ়ଶϝϯόϑΟʔϧυ w ૢ࡞ϝιου
w ॳظԽίϯετϥΫλ w ΧελϜϑοΫ w ঢ়ଶVTF4UBUF w ૢ࡞ؔ w ॳظԽϑοΫͷҾ
24 ·ͱΊ w 3FBDU)PPLTͷΧελϜϑοΫͷొʹΑΓɺΦϒδΣΫτࢦͷϊϋ͕׆༻Ͱ͖ ΔΑ͏ʹͳͬͨɻ w దͳઃܭʹΑΓҎԼ͕࣮ݱՄೳ w ୯Ұͷݪଇ 431
ɺใӅṭ ΧϓηϧԽ w Մಡੑͷ্ɺ࠶ར༻ੑͷ্
25 ·ͱΊ w ࠷େͷϝϦοτ w ίϯϙʔωϯτʹґଘ͠ͳ͍ϩδοΫ͚͕ͩ044ͱͯ͠ڞ༗͞ΕΔΑ͏ʹͳͬͨ w ࠓޙঢ়ଶΛ࣋ͭϩδοΫΛॻ͘લʹɺݕࡧ͢Δ͜ͱΛ͓͢͢Ί͠·͢ɻ w IUUQTHJUIVCDPNTUSFBNJDISFBDUVTF
w IUUQTOJLHSBGHJUIVCJPSFBDUIPPLT w IUUQTVTFIPPLTDPN