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
7
2.6k
NgRxは入れるだけでいいのか? 発生する懸念と考えられるアーキテクチャ / NgRx Architecture
2019年3月27日、Classi Angular Night #2にて発表した資料です。
OKUNOKENTARO
March 27, 2019
Tweet
Share
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
200
Webアプリケーション設計の第一歩は ディレクトリの整理から / Encraft 1
okunokentaro
34
10k
JSONとJSON Schemaを改めて理解する / tokyo_study
okunokentaro
9
2.4k
それでもどうしてRecoilを使うのか / Harajuku.ts Meetup Recoil
okunokentaro
19
5.6k
TypeScriptは10年でこんなに進化しました / TechFeed Experts Night 11
okunokentaro
6
1.8k
Hasura.io RDBをサクサク作る方法はARやO/RMだけじゃなくなりました/hasura-io
okunokentaro
5
690
コードには型アノテーションよりも要件アノテーションを増やせ!/harajukuts2
okunokentaro
14
6.5k
10年と3ヶ月でWebサービスを作った話 / Piyogrammer Conference 2021
okunokentaro
2
1.1k
Other Decks in Technology
See All in Technology
フロントエンド開発者のための「厄払い」
optim
0
180
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
ReproでのicebergのStreaming Writeの検証と実運用にむけた取り組み
joker1007
0
500
しろおびセキュリティへ ようこそ
log0417
0
170
Web Intelligence and Visual Media Analytics
weblyzard
PRO
1
6.8k
あたらしい上流工程の形。 0日導入からはじめるAI駆動PM
kumaiu
1
280
エンジニアとマネジメントの距離/Engineering and Management
ikuodanaka
3
670
2026年はチャンキングを極める!
shibuiwilliam
7
1.5k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Amazon Bedrock AgentCore 認証・認可入門
hironobuiga
1
380
Amazon ElastiCacheのコスト最適化を考える/Elasticache Cost Optimization
quiver
0
250
AI推進者の視点で見る、Bill OneのAI活用の今
sansantech
PRO
1
210
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
150
Agile that works and the tools we love
rasmusluckow
331
21k
GraphQLとの向き合い方2022年版
quramy
50
14k
Color Theory Basics | Prateek | Gurzu
gurzu
0
190
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
Balancing Empowerment & Direction
lara
5
860
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
340
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
270
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
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 গ͠ͷͰߴ͍ੜ࢈ੑΛ