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
Swiftで外部ライブラリを使わないDIの管理方法 / How to manage DI wi...
Search
Takuya Iitsuka
February 05, 2020
Programming
1
2.3k
Swiftで外部ライブラリを使わないDIの管理方法 / How to manage DI without using external library in Swift
Takuya Iitsuka
February 05, 2020
Tweet
Share
Other Decks in Programming
See All in Programming
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
650
どうして僕の作ったクラスが手続き型と言われなきゃいけないんですか
akikogoto
1
100
as(型アサーション)を書く前にできること
marokanatani
6
1.2k
型付き API リクエストを実現するいくつかの手法とその選択 / Typed API Request
euxn23
5
1.6k
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
280
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
9
3.2k
色々なIaCツールを実際に触って比較してみる
iriikeita
0
320
Amazon Qを使ってIaCを触ろう!
maruto
0
380
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
subpath importsで始めるモック生活
10tera
0
130
Why Jakarta EE Matters to Spring - and Vice Versa
ivargrimstad
0
820
よくできたテンプレート言語として TypeScript + JSX を利用する試み / Using TypeScript + JSX outside of Web Frontend #TSKaigiKansai
izumin5210
3
1.1k
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
A Modern Web Designer's Workflow
chriscoyier
693
190k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
How GitHub (no longer) Works
holman
310
140k
Scaling GitHub
holman
458
140k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
830
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Code Review Best Practice
trishagee
64
17k
Typedesign – Prime Four
hannesfritz
40
2.4k
Transcript
4XJGUͰ֎෦ϥΠϒϥϦΛΘͳ͍ %*ͷཧํ๏ ΈͯͶͷ.FFUVQ ൧௩
൧௩ ৽ଔͰϛΫγΟʹೖࣾ ୈҰرͷΈͯͶࣄۀ෦ʹଐ ΞϓϦ։ൃνʔϜͰJ04Λத৺ʹ։ൃ ࣗݾհ
%*ʹ͍ͭͯ 4XJOKFDU ΈͯͶͷ%* ·ͱΊ ࣍
%*ʹ͍ͭͯ
w %FQFOEFODZ*OKFDUJPOʢґଘੑͷೖʣ w ίϯϙʔωϯτؒͷґଘؔΛഉআ͠ɺ֎෦͔Βґ ଘίϯϙʔωϯτΛೖ͢ΔσβΠϯύλʔϯ w ίϯϙʔωϯτ͕ؒૄ݁߹ʹͳΓ։ൃɺςετɺอ क͘͢͠ͳΔ w ඞཁͳͷʢΦϒδΣΫτʣΛ֎͔Β͚ͩ͢
%*ͱ
%*ʹΑΔ .FEJVN7JFX$POUSPMMFS 6TFS3FQPTJUPSZ .FEJVN3FQPTJUPSZ .FEJVN1SFTFOUFS w ྫʣϝσΟΞΛදࣔ͢Δը໘Λ࣮ͨ͠ΦϒδΣΫ τͷґଘؔ ґଘ͍ͯ͠Δʢೖ͢Δ͖ʣΦϒδΣΫτ
%*ʹΑΔ
%*ʹΑΔ ભҠ͍ͤͨ͞ 7JFX$POUSPMMFS
%*ʹΑΔ ඞཁ ґଘؔͷղܾ
w ґଘؔͷղܾΛ·ͱΊͯཧͰ͖Δͱศར %*ʹΑΔ
w αʔυύʔςΟ w 4XJOKFDU $MFBOTF /FFEMF FUD w ࣗલ࣮ w
$BLF1BUUFSO FUDʢΈͯͶͷ%*ʣ %*ཧͷओͳબࢶ
4XJOKFDU
w ґଘؔͷొɺղܾ͕؆୯ʹͰ͖Δ$ 4XJOKFDU
w ґଘؔͷొɺղܾ͕؆୯ʹͰ͖Δ$ 4XJOKFDU ొ͢ΔΦϒδΣΫτͷ ΠϯλʔϑΣʔε
w ґଘؔͷొɺղܾ͕؆୯ʹͰ͖Δ$ 4XJOKFDU ΠϯλʔϑΣʔεͷ ࣮ΦϒδΣΫτ
w ґଘؔͷొɺղܾ͕؆୯ʹͰ͖Δ$ 4XJOKFDU ඞཁͳґଘؔΛղܾ
w ґଘؔͷొɺղܾ͕؆୯ʹͰ͖Δ$ 4XJOKFDU
w ґଘؔͷొɺղܾ͕؆୯ʹͰ͖Δ$ 4XJOKFDU
w ಈతʹґଘؔΛղܾ͢ΔͷͰίϯύΠϧ࣌ʹਖ਼͠ ͕͞ݕূ͞Εͳ͍% w αʔυύʔςΟʹґଘ͢Δ% 4XJOKFDUͷ՝
ΈͯͶͷ%*
ΈͯͶͷ%* w )PHFΠϯλʔϑΣʔεΛ࣋ͭ)PHF*NQMͷΠϯελ ϯεΛऔಘͰ͖Δ)PHF'BDUPSZΛఆٛ͢Δ
ΈͯͶͷ%*
ΈͯͶͷ%* ΠϯλʔϑΣʔεͷܕΛฦ͢ TUBUJDGVODΛఆٛ
ΈͯͶͷ%* ΠϯλʔϑΣʔεͷ ࣮ΦϒδΣΫτΛฦ͢
ΈͯͶͷ%* ඞཁͳґଘؔΛղܾ
ΈͯͶͷ%*
ΈͯͶͷ%*
w ґଘؔͷએݴͱΠϯελϯεͷऔಘ͕؆୯$ w ੩తʹએݴ͍ͯ͠ΔͷͰίϯύΠϧ࣌ʹਖ਼͕͠͞ݕ ূ͞ΕΔ$ w αʔυύʔςΟʹґଘ͠ͳ͍$ w είʔϓͷఆٛɺґଘؔͷղܾΛࣗಈੜ͕Ͱ͖ ͳ͍%
ͳͥ͜ͷํ๏ͳͷ͔
w αʔυύʔςΟʔͷϥΠϒϥϦΛΘͳͯ͘े ࣮༻తͳґଘؔΛղܾ͢ΔΈΛ؆୯ʹ࣮Ͱ ͖Δ w %*ख๏Λબ͢Δͱ͖ʹʮࣗલͰ࣮͢Δʯ͜ͱ ࢹʹೖΕͯΈ͍͔͕ͯͰ͠ΐ͏͔ ·ͱΊ
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠