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
Advanced Service Container Utilization
Search
Richard Miller
June 11, 2012
Programming
4
1.1k
Advanced Service Container Utilization
Richard Miller
June 11, 2012
Tweet
Share
More Decks by Richard Miller
See All by Richard Miller
Introduction to Symfony2 - DrupalCamp London 2014
richardmiller
0
220
Avoiding the mud
richardmiller
22
11k
better searching with elasticsearch - PHPConfPL
richardmiller
2
490
better searching with elasticsearch
richardmiller
2
270
Avoiding the mud - Symfony Live London
richardmiller
7
740
What do I get from the full stack framework?
richardmiller
1
1.4k
Dependency Injection and the Symfony2 Service Container
richardmiller
9
13k
Other Decks in Programming
See All in Programming
エラーレスポンス設計から考える、0→1開発におけるGraphQLへの向き合い方
bicstone
5
1.5k
Debugging: All you need to know (for simultaneous interpreting)
jmatsu
2
940
実践!難読化ガイド
mitchan
0
250
Pythonで改めて考える「クラス(class)」の使いどころ
os1ma
5
1.3k
Rechartsで楽にゴリゴリにカスタマイズする!
10tera
1
170
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
300
Amazon Neptuneで始める初めてのグラフDB ー グラフDBを使う意味を考える ー
satoshi256kbyte
2
260
Understand the mechanism! Let's do screenshots tests of Compose Previews with various variations / 仕組みから理解する!Composeプレビューを様々なバリエーションでスクリーンショットテストしよう
sumio
3
870
Securify_エンジニア採用資料
3shake
0
110
GraphQLの魅力を引き出すAndroidクライアント実装
morux2
3
830
意外とフォントが大事だった話 / Font Issues on Internationalization
fumi23
0
110
Shinjuku.rb#95:心の技術書紹介
free_world21
1
110
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
158
15k
Imperfection Machines: The Place of Print at Facebook
scottboms
263
13k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Designing with Data
zakiwarfel
98
5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.3k
Bootstrapping a Software Product
garrettdimon
PRO
304
110k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
123
18k
The Invisible Side of Design
smashingmag
296
50k
KATA
mclloyd
27
13k
Adopting Sorbet at Scale
ufuk
73
8.9k
Agile that works and the tools we love
rasmusluckow
327
20k
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
58k
Transcript
Advanced Service Container Utilization by Richard Miller (@mr_r_miller)
None
None
Getting the most from the Symfony2 service container
Knowing the injection options open to you
You may get to inject into the constructor
You might get to Inject into setter methods
You may have to inject into properties
You can integrate objects created by factories
You may need to integrate a static factory method
You can configure the container to use the factory method
You may be dealing with a separate factory object
You can also accommodate this with container configuration
Saving time by reducing the amount of configuration you have
to write
The wrong way with interface injection
What is interface injection?
How is interface injection configured?
Why you can't use it
The right way with parent services
You can have parent classes to reduce code repetition
You can also have a parent service to reduce repetitive
configuration
You can change configuration independently from code
Understanding the service container compilation process
You need to call compile if using the component outside
the framework
You get to load complex config from extensions
Using compiler passes to respond to other configuration
What if you want to use services from other bundles?
You need to dynamically register the tagged services
You can register compiler passes from bundles in the framework
Dumping the compiled container for performance
You get the performance benefits by caching the dumped container
You get convenience as well by avoiding the cache in
debug mode
Getting the most from the Symfony2 service container
Questions? @mr_r_miller richardmiller.co.uk