Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AI時代のDependency Injection
Search
sunnyone
September 15, 2026
Programming
24
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AI時代のDependency Injection
AIにも人にも優しい文書とは
sunnyone
September 15, 2026
More Decks by sunnyone
See All by sunnyone
AIコーディング時代に意識したい縦と横
sunnyone
0
120
Rustとgtk-rsで自分用GUIツールを作ろう
sunnyone
1
110
multirange 型(多重範囲型)の活用
sunnyone
0
140
開発者とのコミュニケーションのはじめかた
sunnyone
0
70
概念モデル→論理モデルで気をつけていること
sunnyone
3
560
印象に残ったLLMの使い方5選
sunnyone
0
51
シンプルじゃないテーブルの見つけ方
sunnyone
1
400
Next.js App Router登場後の話
sunnyone
0
89
はやい開発のためのJSONデータ型の活用
sunnyone
0
200
Other Decks in Programming
See All in Programming
go-spidermonkeyでAIエージェントのCode Modeを実装する
syumai
3
1.5k
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
240
スマート反転とウェブアクセシビリティ
camiha
0
200
Omarchy Tokyo やると聞いて UMPC 買ってセットアップしてきた
mtsmfm
0
140
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
270
Laravelのアプリケーションをどこにデプロイするか #ツナギメオフライン.9
akase244
0
120
Heart of Swift Concurrency
koher
0
280
AgentCore CLI で進化した AWS での AI エージェントの作り方 : 必要な機能を必要な時に
icoxfog417
PRO
3
320
Jetpack Compose メカニズム
skydoves
0
130
新卒PdEのリアル
ryu1013
1
490
AI × TiDD / 2026.09.05 Redmine 大阪
tokudiro
1
130
Featured
See All Featured
Thoughts on Productivity
jonyablonski
76
5.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
370
Building Adaptive Systems
keathley
44
3.2k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
The Pragmatic Product Professional
lauravandoore
37
7.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
270
Large-scale JavaScript Application Architecture
addyosmani
515
110k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
700
ラッコキーワード サービス紹介資料
rakko
1
4.8M
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Transcript
AI 時代の Dependency Injection ~AIにも人にも優しい文書とは~ Yoichi Imai PHPerKaigi mini #5
@ 2026-09-17
自己紹介 Yoichi Imai アプリケーションエンジニア フロントエンドとデータベースが主戦場 Web 2
今日話すこと のうれしさと怖さ DI / IoC の話 AI にも人にも読める文書と、その使い方 skill 3
skill 、便利ですよね メリット AI への指示をまとめておける デメリット 実行が非決定的 同じ指示でも、結果が同じとは限らない 知識と処理の境界が見えにくい skill
やモデルを変えたときの影響を追いにくい 4
この怖さ見たことないですか? 巨大フレームワークに密結合したアプリケーション ビジネスロジックが実行環境を直接知っている 必要な機能を自分で呼び出している 結果として フレームワークの変化の影響を受けやすい 交換しにくく、単体で理解・テストしにくい ※ 非決定性は違っても、依存先が見えにくいところは似ている 5
歴史は密結合にどう対処したか → Dependency Injection / Inversion of Control ビジネスロジックをフレームワークから切り離す 依存するものは注入してもらう
交換しやすく単体で理解・テストしやすくする final class OrderService { public function __construct(private PaymentGateway $gateway) {} } 6
AI にも通じるところがあるのでは? 密結合な姿 skill が「プロジェクトの知識」と「処理」をすべて持つ 制御を反転した姿(IoC) プロジェクトの文書が知識の主体になる skill は文書を読み、作業へつなぐ AI
の非決定性は消えないが、モデルに依存する知識と処理の範囲は小 さくできる 7
アプリケーションのDIとの対比 アプリケーション を使うプロジェクト POPO/POCO/POJO プロジェクト文書 DI フレームワーク 文書と作業をつなぐskill 文書は特定のAIに依存しない→"Plain Old
Document” AI 8
文書の例1: ADR (Architecture Decision Record) 何を決めたか/なぜそう決めたか/却下した選択肢とその理由/どこに 適用するか AI に正解だけでなく判断の文脈も伝える 未来の開発者にも同じ文脈を残す
9
文書の例2:コーディング規約 だけへの命令 「◦◦記法を使って実装してください」 プロジェクトの決まりごと 「このプロジェクトでは、△△には◦◦記法を用いる」 命令ではなくプロジェクトの話として書くことで、人が読んでも使え る。 AI 10
skill の例:ADRをチェックする はskillでスパイスのように活用する。 プロジェクトの判断基準はskillに書かない skill は差分収集・文書参照・報告をつなぐ 人も同じADRを読んで判断できる skill 11
活用のためのヒント 決定的に処理できる部分はそもそも通常のツール linter / formatter / AST 操作 文書をどう書くかは自由 人とAIが同じようにたどれる文書構造
構造化の選択肢:OKF(Open Knowledge Format) 12
まとめ は巨大構造に依存した処理の実装方式 プレーンな文書ならAIに依存しない プレーンな文書を活用して巨大構造への依存を減らしたい skill 13