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
大規模Angularの向こう側
Search
OKUNOKENTARO
December 14, 2017
Technology
2
500
大規模Angularの向こう側
Dec 14, 2017 @ng-sake #10 発表資料
OKUNOKENTARO
December 14, 2017
Tweet
Share
More Decks by OKUNOKENTARO
See All by OKUNOKENTARO
Podcastを継続する技術 / refactoradio-240119
okunokentaro
1
99
Webアプリケーション設計の第一歩は ディレクトリの整理から / Encraft 1
okunokentaro
30
9.5k
JSONとJSON Schemaを改めて理解する / tokyo_study
okunokentaro
9
1.9k
それでもどうしてRecoilを使うのか / Harajuku.ts Meetup Recoil
okunokentaro
18
4.9k
TypeScriptは10年でこんなに進化しました / TechFeed Experts Night 11
okunokentaro
6
1.5k
Hasura.io RDBをサクサク作る方法はARやO/RMだけじゃなくなりました/hasura-io
okunokentaro
5
570
コードには型アノテーションよりも要件アノテーションを増やせ!/harajukuts2
okunokentaro
13
5.9k
10年と3ヶ月でWebサービスを作った話 / Piyogrammer Conference 2021
okunokentaro
2
910
any禁止 絶対に型付けを諦めないための便利なユーティリティ関数 / techstand6
okunokentaro
21
6.2k
Other Decks in Technology
See All in Technology
LLMプロダクト事業の立ち上げにおける挑戦
layerx
PRO
7
1.5k
Introduction to Jetpack Compose
pohjus
1
110
今さら聞けない!? AWSの生成AIサービス Amazon Bedrock入門!
minorun365
PRO
11
2.6k
実務への応用例から考える 変更に強いオブジェクト指向設計 / 20240324-ooc2024
bengo4com
7
5.5k
中央集権体制からDataOpsへの転換 / centralized-to-dataops-transformation
pei0804
7
1.5k
マイクロサービス環境におけるDB戦略 in DMMプラットフォーム
pospome
11
3k
KubeCon EU 2024 : Knative Maintainers Session
salaboy
0
370
戦略的DDDを実践するための跳躍力 / OOC 2024
pictiny
6
4.1k
ビジネスロジックを「型」で表現するOOPのための関数型DDD / Functional And Type-Safe DDD for OOP
yuitosato
29
12k
Tohoku.Tech #1 「EC-CUBE/AWSの構築をChatGPTに相談してみました」by テンダ
jun2882
0
140
イチから学ぶdbt / Learn dbt from scratch
shinyaa31
0
130
オブジェクトのおしゃべり大失敗 メッセージングアンチパターン集 / messaging anti-pattern collection
ytake
0
330
Featured
See All Featured
A Tale of Four Properties
chriscoyier
150
22k
The Mythical Team-Month
searls
214
42k
What the flash - Photography Introduction
edds
64
11k
JazzCon 2018 Closing Keynote - Leadership for the Reluctant Leader
reverentgeek
178
11k
How to train your dragon (web standard)
notwaldorf
71
5.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
28
5.9k
Agile that works and the tools we love
rasmusluckow
323
20k
Web development in the modern age
philhawksworth
201
10k
Making Projects Easy
brettharned
106
5.4k
WebSockets: Embracing the real-time Web
robhawkes
59
6.9k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
219
21k
Statistics for Hackers
jakevdp
789
220k
Transcript
େن"OHVMBSͷ͜͏ଆ %FD !OHTBLF
୭ w !PLVOPLFOUBSP w ͪ͞Μ w גࣜձࣾϐΫηϧάϦ ο υ w
OHKBQBOͷதͷਓ
ຊΛॻ͖·ͨ͠
ࠓΔ w େن"OHVMBSΞϓϦ͕ߋʹେ͖͘ͳΔ࣌ɺ Ͳ͏͢ΕΑ͍͔ w ᠘ͩΒ͚
͜ͷลͷଓ͖Ͱ͢ https://speakerdeck.com/armorik83
େنͷͭΒ͍ͱ͜Ζ w ίʔ υͷॏෳΛͲͷΑ ͏ʹநԽ ɾ ڞ௨Խ͢Δ͔ w େͳϑΝΠϧΛͲ͏ͬͯѻ͏͔ w
ϝϯόʔ͕ଟ͍ϓϩδΣΫ τͰͲ͏࣭ͬͯΛ୲อ͢Δ͔
Ͱͳ͘ ͯ
Ϗϧυ͕͍݅
Ϗϧυͷ͞ w ϑΝΠϧ͕ଟ͍͔Βํͳ͍ ʢສߦʣ w ͱʹ͔͍͘ w ng serveͰͨΓલ
w ng buildͰͨΓલ w $*͑༨༟
ੜ࢈ੑͷԼ w Ϗϧυͷ͞ຊʹόΧʹͳΒͳ͍ w ճ$*Λճ͢ͱࣦ࣌ؒΘΕΔ ʢّʹ͍ͬͯΕɺ ͕ͩʣ w ͤΊͯ։ൃதαΫαΫ͍ͨ͠
ͦ͏ͩϑΝΠϧΛݮΒͦ͏
૯ϑΝΠϧͷݮ w ݱࡏɺ ཁ݅ͷͷఔ͕࣮ྃͰɺ ͢Ͱʹ͜ͷ͞ w ཁ݅Λ΄΅࣮͖͠ΔͰ͋Ζ͏ ϓϩδΣΫ τऴ൫ɺ
ݱࡏΑ Γഒ͕͔͔࣌ؒΔͱ༧ w ͩͬͨΒείʔϓΛখ͞ ͘͢Δ͜ͱͰɺ Ϗϧυ࣌ؒΛ͜ΕҎ্૿͞ͳ͍Α ͏ʹ͠Α ͏
ΞϓϦͷׂ w "OHVMBS$-*ʹෳͷΞϓϦΛཧ͢ΔΈ͕͋Δ w ng serve --app=app-nameͳͲ w લྫΛࢀߟʹ͍ͨ͠
/Y w IUUQTOSXMJPOY w 7JDUPS4BWLJOࢯͷձࣾɺ "OHVMBSͷίϯαϧλϯ τͷձࣾΒ͍͠ w ͜͏͍͏໊લͷπʔϧ͔ͱࢥ͍͖ɺ
ςϯϓϨʔ τूɺ ϊϋूͱࢥͬͨ΄͏͕Α͍ w ෳΞϓϦཧͷϊϋ͕٧·ͬͯΔ
4DIFNBUJDT w "OHVMBS$-*Α Γ#MVFQSJOUTʹΘͬͯಋೖ͞ΕͨςϯϓϨʔ τੜ ͷج൫ w Α ͏͘ಠࣗςϯϓϨʔ τΛੜͰ͖ΔΑ
͏ʹͳͬͨ w schema.json, index.tsΛطଘͷͷΛࢀߟʹෳ͢Ε࡞ΕΔ w ݱࡏӡ༻தɺ ϊϋੵதͳͷͰ·͍ͨͣΕ͠·͢
ΞϓϦׂ͕Ͱ͖ͨ w ͱࢥ͍͔ͨͬͨ
Կ͕μϝ͔ w ࠷ॳ͔ΒΞϓϦׂΛఆ͍ͯ͠ͳ͍ͱɺ ్த͔Βͷׂઃܭ্͔ͳΓͭΒ͍ w ϧʔςΟ ϯά͕େʹͳΔ ʢ-B[ZMPBEJOHͱ4JOHMFUPOͷʣ
w "ΞϓϦ ͱ#ΞϓϦΛಉ࣌ʹىಈͯ͠ϧʔςΟ ϯάΛৼΓ͚͚ͨΕɺ ϧʔςΟ ϯά༻ͷϋϒΞϓϦͷ࡞ඞཁ w ཧίε τ͕ΞϓϦʹ૿͑Δ ʢϏϧυ͕͍͜ͱΑ Γ खؒͳՄೳੑʣ
ͰϏϧυ࣌ؒΛݮΒ͍ͨ͠
ͤΊͯ։ൃத͘ʜ w ͱ͍͏ ͜ͱͰTestBed.configureTestingModule()ʹΑͬͯ ࡞ΒΕΔখنϞδϡʔϧͷඳըͰಈ࡞ݕূͰ͖ͳ͍͔࣮ݧͨ͠ w ͜͏͢Εείʔϓ͕5FTU#FEʹಡΈࠐ·ΕΔґଘؔͷΈʹͳΓɺ ߴϏϧυ͕ՄೳʹͳΔ͔ ʁ
͘ͳͬͨ w ͱࢥ͍͔ͨͬͨ
Կ͕μϝ͔ w "OHVMBS$-*ͷXFCQBDL͕ղ͗ͯ͢ɺ ෦తϏϧυͷΈ͕ ͔ͳΓߏஙͮ͠Β͍ w ng ejectͤͣʹ࣮ݱ͠Α ͏ ͱ͢Δͱݫ͍͠
w ng ejectΛͤͣʹɺ ng ejectͯ͠ಘΒΕͨwebpack.configΛ ϕʔεʹվ͢Δ͜ͱߟ͕͑ͨɺ ࠓޙͷόʔδϣϯΞοϓʹ͍ͭͯߦ͚ͣ ෛ࠴Խ͢Δະདྷ͕ݟ͑ͨ
ଥڠ w "OHVMBS$-*͕ੜ͢Δsrc/test.tsΛෳͯ͠ΠδΔ w const context = require.context()ͷείʔϓΛݶఆ͢Ε ಡΈࠐ·ΕΔϑΝΠϧ͕ݮΒͤΔͣ w
ݱࡏࢼߦࡨޡதʜ w ͍͍Γํ͋Ε୭͔ڭ͑ͯʜ
ͪͳΈʹ
େنͷͭΒ͍ͱ͜Ζճฤ w ίʔ υͷॏෳΛͲͷΑ ͏ʹநԽ ɾ ڞ௨Խ͢Δ͔ ɹˠ%%%ͷֶΛ༝དྷͱͨ͠ϞσϦϯάख๏ͷप w େͳϑΝΠϧΛͲ͏ͬͯѻ͏͔
ɹˠಠࣗ4DIFNBUJDTʹΑΔࣗಈੜ w ϝϯόʔ͕ଟ͍ϓϩδΣΫ τͰͲ͏࣭ͬͯΛ୲อ͢Δ͔ ɹˠ1SFUUJFS༷ສࡀɺ ୭ʹจ۟ݴΘͤͳ͍
Α͍͓Λ