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
NgRxは入れるだけでいいのか? 発生する懸念と考えられるアーキテクチャ / NgRx Ar...
Search
OKUNOKENTARO
March 27, 2019
Technology
2.6k
7
Share
NgRxは入れるだけでいいのか? 発生する懸念と考えられるアーキテクチャ / NgRx Architecture
2019年3月27日、Classi Angular Night #2にて発表した資料です。
OKUNOKENTARO
March 27, 2019
More Decks by OKUNOKENTARO
See All by OKUNOKENTARO
トレタO/X アーキテクチャ移行記 Next.js App Router化への道のり / TORETA TECH UPDATE 1
okunokentaro
5
12k
Podcastを継続する技術 / refactoradio-240119
okunokentaro
1
210
Webアプリケーション設計の第一歩は ディレクトリの整理から / Encraft 1
okunokentaro
33
10k
JSONとJSON Schemaを改めて理解する / tokyo_study
okunokentaro
9
2.5k
それでもどうしてRecoilを使うのか / Harajuku.ts Meetup Recoil
okunokentaro
19
5.7k
TypeScriptは10年でこんなに進化しました / TechFeed Experts Night 11
okunokentaro
6
1.8k
Hasura.io RDBをサクサク作る方法はARやO/RMだけじゃなくなりました/hasura-io
okunokentaro
5
710
コードには型アノテーションよりも要件アノテーションを増やせ!/harajukuts2
okunokentaro
14
6.6k
10年と3ヶ月でWebサービスを作った話 / Piyogrammer Conference 2021
okunokentaro
2
1.1k
Other Decks in Technology
See All in Technology
Spring Boot における AOT Cache 活用テクニックと 起動時間改善事例
ntt_dsol_java
0
210
プラットフォームエンジニア ワークショップ/ platform-workshop
databricksjapan
1
260
Claude code Orchestra
ozakiomumkj
3
940
生成 AI × MCP で切り拓く次世代 SRE!自律型運用への挑戦と開発者体験の進化
_awache
0
140
AI フレンドリーなエラー監視を TypeScript で実現する
shinyaigeek
2
250
コードレビューを制するチームがソフトウェアデリバリーのフローを制す / Beyond Code Review: Distributing Its Responsibilities Across the SDLC
mtx2s
3
1k
DevOps Agentで始めるAWS運用 〜フロンティアエージェントが変える運用の現場〜
nyankotaro
1
150
個人の発見を、組織の知恵に 〜生成AI活用を"探索"から"組織の仕組み"へ〜
kintotechdev
2
890
Javaコミュニティをもっと楽しむための9箇条
takasyou
0
1.2k
先取りMaven4 ~16年ぶりのメジャーアップデート、その進化とは?~
ogiwarat
0
140
はじめてのDatadog
kairim0
0
270
Mastering Ruby Box
tagomoris
3
150
Featured
See All Featured
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
200
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
360
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
270
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
570
Joys of Absence: A Defence of Solitary Play
codingconduct
1
380
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
310
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Done Done
chrislema
186
16k
Transcript
/H3YೖΕΔ͚ͩͰ͍͍ͷ͔ ൃੜ͢Δݒ೦ͱߟ͑ΒΕΔΞʔΩςΫνϟ .BS $MBTTJ"OHVMBS/JHIU
୭ w Ԟݡଠ!PLVOPLFOUBSP w ΫϨεΣΞද w ΞϓϦέʔγϣϯ ɾ ΤϯδχΞ w
"OHVMBSຊϢʔβʔձ OHLZPUPΦʔΨφΠβ
ຊͷ༰ w ͳͥΞʔΩςΫνϟΛߟ͑Δඞཁ͕͋Δ͔ w /H3YԿΛॿ͚Δ͔ w /H3YԿΛॿ͚ͯ͘Εͳ͍͔
ͳͥΞʔΩςΫνϟΛߟ͑Δඞཁ͕͋Δ͔
ੲ 5FNQMBUF)5.- "OHVMBS+4OHDPOUSPMMFS IUUQ "OHVMBS+4'JMUFS
"OHVMBSWFS 5FNQMBUF)5.- !$PNQPOFOU )UUQ !BOHVMBSIUUQ "OHVMBS1JQF
"OHVMBSWFS 5FNQMBUF)5.- !$PNQPOFOU )UUQ$MJFOU !BOHVMBSDPNNPOIUUQ "OHVMBS1JQF
ྺ࢙ͷੵ 5FNQMBUF)5.- !$PNQPOFOU )UUQ$MJFOU !BOHVMBSDPNNPOIUUQ "OHVMBS1JQF
4FSWJDFΛ࡞ͬͯΈΔ 5FNQMBUF)5.- !$PNQPOFOU )UUQ$MJFOU !BOHVMBSDPNNPOIUUQ "OHVMBS1JQF 6TFST4FSWJDF "QJ4FSWJDF
ͳΜͪΌΒ4FSWJDF૿͑͗͢ 5FNQMBUF)5.- !$PNQPOFOU )UUQ$MJFOU !BOHVMBSDPNNPOIUUQ "OHVMBS1JQF 6TFST4FSWJDF "QJ4FSWJDF 4PNFUIJOH"QJ1BSBNT#VJME4FSWJDF "OZUIJOH7BMVFT.FSHF4FSWJDF
"VUI4FSWJDF (VBSE4FSWJDF 6MUSB(SFBU4FSWJDF
͜ΕΛ 5FNQMBUF)5.- !$PNQPOFOU )UUQ$MJFOU !BOHVMBSDPNNPOIUUQ "OHVMBS1JQF
͜͏ ͚ͨͩ͠ 5FNQMBUF)5.- !$PNQPOFOU )UUQ$MJFOU !BOHVMBSDPNNPOIUUQ "OHVMBS1JQF 6TFST4FSWJDF "QJ4FSWJDF 4PNFUIJOH"QJ1BSBNT#VJME4FSWJDF
"OZUIJOH7BMVFT.FSHF4FSWJDF "VUI4FSWJDF (VBSE4FSWJDF 6MUSB(SFBU4FSWJDF
ͳͥ4FSWJDF͕૿͑Δͷ͔ w ڊେͳDMBTTͷղΛ೦಄ʹஔ͍ͯ͠·ͬͯͳ͍͔ w ͦͷ4FSWJDF͕ ʮԿΛ͢ΔͨΊͷ4FSWJDF͔ʯ ։ൃऀ͕ࣗཧղ͍ͯ͠Δ͔ w ͨͩͷॲཧ܈ʹ໊લۭؒΛ༩͚͑ͨͩʹͳ͍ͬͯͳ͍͔
ͳͥ4FSWJDF͕ඞཁͳͷ͔Λߟ͑Δ w ·ͣ"OHVMBSελΠϧΨΠ υʹै͏ͷྑ͍ϓϥΫςΟ ε w ࣍ʹҋӢʹ4FSWJDFΛ࡞Δ͜ͱΛආ͚ɺ ඞવతͳ4FSWJDFΛ࡞ΔΑ ͏ʹ͢Δ w
431 ʢ4JOHMF3FTQPOTJCJMJUZ1SJODJQMF୯Ұݪଇʣ ʹϐϯͱདྷͳ͚Ε ͦͷ4FSWJDFͷΞϓϦέʔγϣϯͰͷݱࡏҐஔΛѲ͢Δ
աڈεϥΠ υΑ ΓҾ༻ https://speakerdeck.com/okunokentaro/angularzhong-da-gui-mo-apurishe-ji?slide=13 https://speakerdeck.com/okunokentaro/angularzhong-da-gui-mo-apurishe-ji?slide=25 https://speakerdeck.com/okunokentaro/frontend-conference-fukuoka-2018?slide=63
Ϟμϯ8FCΞϓϦέʔγϣϯ͕Γ͍ͨ͜ͱ ௨৴͍ͨ͠ ඳը͍ͨ͠
ݱࡏҐஔΛҙࣝͨ͠ઃܭ $PNQPOFOUඳըدΓ )UUQ$MJFOU௨৴ৄࡉͷӅṭ 3FQPTJUPSZ௨৴دΓ 5FNQMBUFඳը "QJ4FSWJDF௨৴ 'BDBEF.FEJBUPSඳը㲗௨৴ؒͷநԽ ࠓॻ͍ͯΔίʔ υɺ
ඳըدΓ ʁ ௨৴دΓ ʁ ։ൃऀಉ࢜ͷ ڞ௨ೝࣝΛ࣋ͭ
ͳͥ͜ΕͰͩΊ͔ ௨৴ ඳը
ͯ͢ςε τͷͨΊ ඳըͷςετΛ͘͢͢͠Δ ௨৴ औಘͨ͠ΤϯςΟςΟͷू߹ͳͲΛςετ͘͢͢͠Δ ඳը ࣮ࡍʹ௨৴ͤͣύϥϝʔλʹ͍ͭͯςετΛ͘͢͢͠Δ %0.ࣝΛؚ·ͳ͍ϩδοΫͷςετΛ͘͢͢͠Δ %3:ͱ͔ 40-*%ݪଇͱ͔͋Δ͚Ͳ
શ෦ςε τͷͨΊͷ Α ͏ͳΜ
ͦͷ4FSWJDFͳΜͷͨΊ ʁ ඳըͷςετΛ͘͢͢͠ΔͨΊʁ ௨৴ औಘͨ͠ΤϯςΟςΟͷू߹ͳͲΛςετ͘͢͢͠ΔͨΊʁ ඳը ࣮ࡍʹ௨৴ͤͣύϥϝʔλʹ͍ͭͯςετΛ͘͢͢͠ΔͨΊʁ %0.ࣝΛؚ·ͳ͍ϩδοΫͷςετΛ͘͢͢͠ΔͨΊʁ
/H3YԿΛॿ͚Δ͔
/H3YԿ͔ w /H3YΞʔΩςΫνϟͰͳ͍ w ௨৴ʹΑͬͯऔಘͨ͠σʔλɺ Ϣʔβͷૢ࡞ʹΑͬͯੜ·ΕͨมΛ ֨ೲ͓ͯͨ͘͠Ίͷγϯάϧ τϯ w -B[ZMPBEΛߟྀ͢Δͱඞਢͷػߏ
w /H3Yʹ֨ೲ͞Εͨ܈Λ༻͢Δखஈͷఏڙͱ ύϑΥʔϚϯεʹؔ͢ΔॲཧͷӅṭ
/H3YΛΘͳ͍ͱ͖ $PNQPOFOU )UUQ$MJFOU 3FQPTJUPSZ 5FNQMBUF "QJ4FSWJDF 'BDBEF.FEJBUPS new ReplaySubject() new
ReplaySubject() new ReplaySubject() new ReplaySubject()
/H3YΛಋೖ )UUQ$MJFOU 5FNQMBUF /H3Y $PNQPOFOU "QJ4FSWJDF
/H3YԿΛॿ͚ͯ ͘Εͳ͍͔
༉அ͢Δͱ͜͏ͳΔ )UUQ$MJFOU 5FNQMBUF /H3Y 'FBUVSF 'FBUVSF $PNQPOFOU "QJ4FSWJDF 4FMFDUPS 4FMFDUPS
4FMFDUPS 4FMFDUPS 4FMFDUPS 4FMFDUPS 4FMFDUPS &GGFDUT &GGFDUT &GGFDUT &GGFDUT &GGFDUT &GGFDUT /H3YΞʔΩςΫνϟ Ͱͳ͍ ผ్ߟ͑Δඞཁ͕͋Δ
/H3Y ϨΠϠʔΛҙࣝͨ͠/H3YͷཱͪҐஔ $PNQPOFOUը໘ͰͰ͖Δ͜ͱͱɺࣸ͢ͷΛհ 5FNQMBUFը໘ )UUQ$MJFOU 3FQPTJUPSZ "QJ4FSWJDF 2VFSJFT ͦͷը໘ʹԿΛࣸ͢ʁ $PNNBOET
ͦͷը໘ͰԿ͕Ͱ͖Δʁ 'FBUVSF 'FBUVSF 'FBUVSF 'FBUVSF
&GGFDUTิࠤ 5FNQMBUFը໘ )UUQ$MJFOU 3FQPTJUPSZ "QJ4FSWJDF 2VFSJFT ͦͷը໘ʹԿΛࣸ͢ʁ $PNNBOET ͦͷը໘ͰԿ͕Ͱ͖Δʁ /H3Y&GGFDUT
$PNQPOFOUը໘ͰͰ͖Δ͜ͱͱɺࣸ͢ͷΛհ /H3Y 'FBUVSF 'FBUVSF 'FBUVSF 'FBUVSF
&GGFDUTଟ༻͠ͳ͍ w ෭࡞༻͕ଘࡏ͠ͳ͍ͳΒɺ 9)3͕བྷΉͱ͍͏͚ͩͰ&GGFDUTΛ༻͠ͳ͍ w UBQ ͕ग़ͯ͜ͳ͚Ε&GGFDUTͰ͋Δඞཁ΄΅ແ͍ • https://www.notion.so/Learn-NgRx-a6fa8691e2584682949852183254bebd
4FMFDUPSΛཧղ͢Δ w $PNQPOFOUʹTFMFDU ͷࢁΛங͍͍ͯͳ͍͔ w UIJTTUPSFEJTQBUDITVCTDSJCFͰ͖ΔҰํɺ ςε τ͠ʹ͍͘ 'BDBEFͳΓ.FEJBUPSͳΓͰӅṭ͢Δ w
લͷਤͩͱ$PNNBOET 2VFSJFTͱͯ͠Ϋϥε໊ʹσʔλϑϩʔํΛ໌ه ʢ$234ΞʔΩςΫνϟΑ Γணʣ w 'FBUVSFͷࡉԽ͗͢͠ʹཁҙ ࡉԽ͗ͯ͢͠͠·ͬͨͳΒ2VFSJFTͰґଘΛٵऩ w $PNQPOFOUͰେྔͷ4FMFDUPSʹґଘ͠ͳ͍ ʢґଘੑೖͷԸܙ͕ಘΒΕͳ͍ʣ
ͳΜͷͨΊͷ4FSWJDF͔ҙࣝ͢Δ w ΞϓϦέʔγϣϯશମʹ͓͍ͯ ֤͕ࣗࣗԿΛ͖͢DMBTTͳͷ͔ҙࣝͤΑ w ͯ͢Λ ʮͳΜͪΌΒ4FSWJDFʯ ʹ͢Δ ͘ Β͍ͳΒ
ׂ͍ͬͦΛϋοΩ Ϧ ໋໊ͤͨ͞ͷ΄͏͕Α͍ ʢ˞ͨͩ͠"OHVMBSελΠϧΨΠ υ֎ʣ
5IBOLZPV গ͠ͷͰߴ͍ੜ࢈ੑΛ