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
Dr. Springlove
Search
zhanpon
May 18, 2019
Technology
0
440
Dr. Springlove
zhanpon
May 18, 2019
Tweet
Share
More Decks by zhanpon
See All by zhanpon
Understanding Coroutines
zhanpon
0
53
DDD and Spring Boot
zhanpon
0
2k
Other Decks in Technology
See All in Technology
United Airlines Customer Service– Call 1-833-341-3142 Now!
airhelp
0
170
LangChain Interrupt & LangChain Ambassadors meetingレポート
os1ma
2
310
関数型プログラミングで 「脳がバグる」を乗り越える
manabeai
1
190
事業成長の裏側:エンジニア組織と開発生産性の進化 / 20250703 Rinto Ikenoue
shift_evolve
PRO
2
21k
Delta airlines Customer®️ USA Contact Numbers: Complete 2025 Support Guide
deltahelp
0
690
PO初心者が考えた ”POらしさ”
nb_rady
0
210
Flutter向けPDFビューア、pdfrxのpdfium WASM対応について
espresso3389
0
130
How Do I Contact HP Printer Support? [Full 2025 Guide for U.S. Businesses]
harrry1211
0
120
敢えて生成AIを使わないマネジメント業務
kzkmaeda
2
440
Geminiとv0による高速プロトタイピング
shinya337
1
270
Backlog ユーザー棚卸しRTA、多分これが一番早いと思います
__allllllllez__
1
150
高速なプロダクト開発を実現、創業期から掲げるエンタープライズアーキテクチャ
kawauso
2
9.2k
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
35
6.7k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Designing for Performance
lara
610
69k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
We Have a Design System, Now What?
morganepeng
53
7.7k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Code Review Best Practice
trishagee
69
18k
YesSQL, Process and Tooling at Scale
rocio
173
14k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Transcript
Dr. Springlove ·ͨࢲԿʹͯ͠৺͢ΔͷΛࢭ ΊͯDIΛѪ͢ΔΑ͏ʹͳ͔ͬͨ
ࣗݾհ: @zhanpon » ࣄ1. Spring BootͰϨίϝϯσʔγϣϯγεςϜ։ൃ » ࣄ2. ࣾͷֶಉձͷΦʔΨφΠβʔ
͜ͷLTͰ͍͑ͨ͜ͱ
"Dependency Injection: Principles, Practices, and Patterns"ͱ͍͏ຊ͕ ૉΒ͍͠ͷͰհ͍ͨ͠ʂ
None
ग़ձ͍
ڈͷ4݄ࠒ ͳΜ͔มʹ@Autowired͚ͬͯͭΔͱϑϨʔϜϫʔΫ͕ͦͷػೳΛఏڙ ͯ͘͠ΕΔΒ͍͠ɻSpring Bootͬͯศརͩͳʙ
ڈͷ5݄ࠒʢͦͷ1ʣ ͋͋ɺ·ͨjava.lang.IllegalStateException: Failed to load ApplicationͩʂΞϊςʔγϣϯͩΒ͚ͰԿΘ͔Βͳ͍ʔʔ
ڈͷ5݄ࠒʢͦͷ2ʣ ;Ή;ΉɺDIͷઐॻ͕͋ΔΒ͍͠ɺಡΜͰΈΑ͏ɻ
ͦͯ͠……։؟
DIຊͷ͍͍ͱ͜Ζ 1. ߟ͕ଟ໘త 2. ϑϨʔϜϫʔΫʹཔΒͳ͍
ߟ͕ଟ໘త
None
ߟ͕ଟ໘త ʮDI͚͖ͬͯͬΐ͘{ԆόΠϯσΟϯά,୯ମςετ}ͷͨΊʹ͋ΔΜͰ ͠ΐʯΈ͍ͨͳ୯७ͳ݁ʹඈͼ͔ͭͳ͍
ߟ͕ଟ໘త ͜ͷຊͰ3ͭͷ࣠Ͱߟ͞Ε͍ͯΔ 1. Object Composition 2. Object Lifetime 3. Interception
ϑϨʔϜϫʔΫʹཔΒͳ͍ » Part 1: DIͷશମ૾ » Part 2: Χλϩά »
Part 3: ७ਮͳDI » Part 4: DIίϯςφ
ϑϨʔϜϫʔΫʹཔΒͳ͍ » Ch. 10: Aspect-Oriented Programming by design » Ch.
11: Tool-based Aspect-Oriented Programming
ϑϨʔϜϫʔΫʹཔΒͳ͍ ʮͳΜ͔ΨνϟΨνϟΞϊςʔγϣϯ͚ͨΒͬͨʯͱ͍͏ࢥߟ͔Β ൈ͚ग़ͤͨɻ
ͱ͜ΖͰ…
ୈ1൛
None
C#ͷຊͰͨ͠ʂ ͝ΊΜ ͳ͍͞ʂʂ