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
メンヘラコードをDIを使って駆逐する
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
tomoya-kamaji
May 22, 2022
Technology
0
930
メンヘラコードをDIを使って駆逐する
tomoya-kamaji
May 22, 2022
Tweet
Share
More Decks by tomoya-kamaji
See All by tomoya-kamaji
AI時代に学習する意味はあるのか?
tomoyakamaji
0
220
デザインドックから学ぶ開発手法
tomoyakamaji
0
860
Clean Architecture ~ 達人に学ぶソフトウェア構造と設計
tomoyakamaji
0
1k
複雑な検索処理をElasticSearchで駆逐する
tomoyakamaji
0
1.1k
Other Decks in Technology
See All in Technology
元エンジニアPdM、IDEが恋しすぎてCursorに全業務を集約したら、スライド作成まで爆速になった話
doiko123
1
610
DevOpsエージェントで実現する!! AWS Well-Architected(W-A) を実現するシステム設計 / 20260307 Masaki Okuda
shift_evolve
PRO
3
650
IBM Bobを使って、PostgreSQLのToDoアプリをDb2へ変換してみよう/202603_Dojo_Bob
mayumihirano
1
330
OCHaCafe S11 #2 コンテナ時代の次の一手:Wasm 最前線
oracle4engineer
PRO
1
120
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
5
1.2k
JAWSDAYS2026 [C02] 楽しく学ぼう!AWSとは?AWSの歴史 入門
hiragahh
0
120
Postman v12 で変わる API開発ワークフロー (Postman v12 アップデート) / New API development workflow with Postman v12
yokawasa
0
100
JAWS FESTA 2025でリリースしたほぼリアルタイム文字起こし/翻訳機能の構成について
naoki8408
1
400
「Blue Team Labs Online」入門 - みんなで挑むログ解析バトル
v_avenger
0
150
Go標準パッケージのI/O処理をながめる
matumoto
0
160
Evolution of Claude Code & How to use features
oikon48
1
600
Claude Code のコード品質がばらつくので AI に品質保証させる仕組みを作った話 / A story about building a mechanism to have AI ensure quality, because the code quality from Claude Code was inconsistent
nrslib
13
7.2k
Featured
See All Featured
Everyday Curiosity
cassininazir
0
160
Tell your own story through comics
letsgokoyo
1
840
Discover your Explorer Soul
emna__ayadi
2
1.1k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.4k
Producing Creativity
orderedlist
PRO
348
40k
Visualization
eitanlees
150
17k
Technical Leadership for Architectural Decision Making
baasie
3
290
Navigating Team Friction
lara
192
16k
A Soul's Torment
seathinner
5
2.4k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
210
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
Transcript
DI
(27) 2018/4 Sier 2021/6 Another works
ෳۀΛ͍ͨ͠ਓͱෳۀਓࡐΛొ༻͍ͨ͠اۀ༷Λͭͳ͙ ϚονϯάϓϥοτϑΥʔϜ հखྉͳ͠ɺఆֹͰ࠾༻͠์
DI
λεΫొΫϥε $SFBUF5BTL6TF$BTF .Z42-ʹӬଓԽ͢ΔΫϥε .Z4RM3FQPTJUPZ ͱ͘Μ ·͍ͪΌΜ ɾ·͍ͪΌΜͷมԽʹͱ͘Μ͕ ɹӨڹΛड͚Δ
ɾ·͍ͪΌΜʹґଘ͗ͯ͢͠ɺ·͍ ɹͪΌΜ͔ΒΓ͑ΒΕͳ͍ ɾ%#ొΫϥεͷมԽʹλεΫొΫϥε͕ ɹӨڹΛड͚Δ ɾ.Z42-͔ΒΓ͑ΒΕͳ͍
None
ᶃ λεΫొ͢ΔৼΔ͍Λද͍͕ͨ͠03.ͷ͕ࣝ͋ͬͯ ɹॲཧ͕ಡΈͮΒ͍ ᶄ ಛఆͷ03.%#ʹґଘͨ͠ॲཧʹͳ͍ͬͯΔ
ᶃ λεΫొ͢ΔৼΔ͍Λද͍͕ͨ͠03.ͷ͕ࣝ͋ͬͯ ɹॲཧ͕ಡΈͮΒ͍ ͬͨ ᶄ ಛఆͷ03.%#ʹґଘͨ͠ॲཧʹͳ͍ͬͯΔ ˠ.Z4RMͷ͕ࣝVTF$BTFʹ࿙Ε͍ͯΔ ґଘ͍ͯ͠Δ
MySQL Radis MySQL
Radis ଞʹӬଓԽઌ͕૿͑ͨΒɺɺɺ JGจ͕૿͑·͘Δ ՃΕ͕ൃੜ͢Δ λεΫొΫϥε $SFBUF5BTL6TF$BTF .Z4RM
3FQPTJUPSZ 3BEJT 3FQPTJUPSZ ɺɺɺɺ
λεΫొΫϥε $SFBUF5BTL6TF$BTF .Z4RM 3FQPTJUPSZ 3BEJT 3FQPTJUPSZ ɺɺɺɺ
*5BTL3FQPTJUPSZ *OUFSGBDF5BTL3FQPTJUPSZ MySqlReposity RadisRepsotory (interface) (DI) JGذ͕ͳ͘ͳΔ ಛఆͷ%#ʹґଘ͠ͳ͍
DI( ) - - ( mock ) - ( )
- interface