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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
zhanpon
May 18, 2019
Technology
470
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dr. Springlove
zhanpon
May 18, 2019
More Decks by zhanpon
See All by zhanpon
Understanding Coroutines
zhanpon
0
78
DDD and Spring Boot
zhanpon
0
2.1k
Other Decks in Technology
See All in Technology
AI活用の現在地、 ちゃんと見えてますか?/XPfest-2026
visional_engineering_and_design
0
130
Level Up Your CDK DX: 5 Tools I’ve Been Building
gotok365
2
190
PfEingのアプローチで働こう
rindrics
0
160
Autonomous AI Databaseサービス・アップデート(FY27)/ adb-service-update-jp-fy27
oracle4engineer
PRO
0
100
KAEN Company Deck
kaen
PRO
0
290
When Token Pruning is Worse than Random: Understanding Visual Token Information in VLLMs
sansantech
PRO
0
250
Nav2、Nav3 ... はたまた自作?〜 作って理解する Nav3 の設計意図 〜 / Nav2, Nav3 ... or Build Your Own? — Understanding Nav3's design intent by building it from scratch
yanzm
0
200
設計の世代交代を乗り越える、14年続くAndroidアプリの開発戦略
sansantech
PRO
1
120
なぜSRE・セキュリティは評価されないのか?守りの組織を事業成長エンジンに変えた実践
cscengineer
PRO
2
2.1k
AI時代におけるプロダクト横断勉強会の設計
zozotech
PRO
0
150
Redmine 7.0で私が開発した新機能の狙いと背景
vividtone
1
100
はじめてのDatabricks:技術者向けワークショップ / beginner-workshop
databricksjapan
PRO
0
140
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
490
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
520
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
240
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
320
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Documentation Writing (for coders)
carmenintech
77
5.5k
The Pragmatic Product Professional
lauravandoore
37
7.4k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.7k
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#ͷຊͰͨ͠ʂ ͝ΊΜ ͳ͍͞ʂʂ