Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
大規模Angularの向こう側
Search
OKUNOKENTARO
December 14, 2017
Technology
2
520
大規模Angularの向こう側
Dec 14, 2017 @ng-sake #10 発表資料
OKUNOKENTARO
December 14, 2017
Tweet
Share
More Decks by OKUNOKENTARO
See All by OKUNOKENTARO
トレタO/X アーキテクチャ移行記 Next.js App Router化への道のり / TORETA TECH UPDATE 1
okunokentaro
5
11k
Podcastを継続する技術 / refactoradio-240119
okunokentaro
1
190
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.4k
10年と3ヶ月でWebサービスを作った話 / Piyogrammer Conference 2021
okunokentaro
2
1.1k
Other Decks in Technology
See All in Technology
freeeにおけるファンクションを超えた一気通貫でのAI活用
jaxx2104
3
770
AI (LLM) を活用する上で必須級のMCPをAmazon Q Developerで学ぼう / 20251127 Ikuma Yamashita
shift_evolve
PRO
2
100
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.3k
AI/MLのマルチテナント基盤を支えるコンテナ技術
pfn
PRO
5
730
プラットフォームエンジニアリングとは何であり、なぜプラットフォームエンジニアリングなのか
doublemarket
1
550
eBPFとwaruiBPF
sat
PRO
4
1.6k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.3k
ブロックテーマとこれからの WordPress サイト制作 / Toyama WordPress Meetup Vol.81
torounit
0
310
バグハンター視点によるサプライチェーンの脆弱性
scgajge12
2
510
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.9k
Playwrightのソースコードに見る、自動テストを自動で書く技術
yusukeiwaki
7
2.6k
セキュリティAIエージェントの現在と未来 / PSS #2 Takumi Session
flatt_security
3
1.4k
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Mobile First: as difficult as doing things right
swwweet
225
10k
Git: the NoSQL Database
bkeepers
PRO
432
66k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Statistics for Hackers
jakevdp
799
230k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
1k
RailsConf 2023
tenderlove
30
1.3k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Agile that works and the tools we love
rasmusluckow
331
21k
Practical Orchestrator
shlominoach
190
11k
Side Projects
sachag
455
43k
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༷ສࡀɺ ୭ʹจ۟ݴΘͤͳ͍
Α͍͓Λ