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
Silex (phpquebec)
Search
Igor Wiedler
July 12, 2013
Programming
450
6
Share
Silex (phpquebec)
Igor Wiedler
July 12, 2013
More Decks by Igor Wiedler
See All by Igor Wiedler
Redis Bedtime Stories
igorw
1
350
Wide Event Analytics (LISA19)
igorw
4
940
a day in the life of a request
igorw
0
160
production: an owner's manual
igorw
0
190
The Power of 2
igorw
0
330
LISP 1.5 Programmer's Manual: A Dramatic Reading
igorw
0
470
The Moral Character of Software
igorw
1
310
interdisciplinary computing (domcode)
igorw
0
320
miniKanren (clojure berlin)
igorw
1
330
Other Decks in Programming
See All in Programming
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.1k
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.3k
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
140
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
670
OCRを使ってゲームのアイテムをデータ化する
kishikawakatsumi
0
130
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
440
Modding RubyKaigi for Myself
yui_knk
0
860
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
150
PHPで使える日時の表現と、その知り方 #frontend_phpcon_do
o0h
PRO
0
180
Moments When Things Go Wrong
aurimas
3
140
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
2
400
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
230
Featured
See All Featured
Abbi's Birthday
coloredviolet
2
7.8k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.3k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
310
The Spectacular Lies of Maps
axbom
PRO
1
780
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
280
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
260
Crafting Experiences
bethany
1
160
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.7k
What does AI have to do with Human Rights?
axbom
PRO
1
2.2k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
520
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
550
Transcript
None
@igorwesome
Chunking
Context more abstract more concrete
Frameworks Zero
Frameworks Zero Don’t re- invent the wheel! You’re bloated and
buggy!
Frameworks Zero Conventions Libraries Wiring
Conventions Libraries Wiring Coding standard Directory layout Community
Conventions Libraries Wiring Routing ORM Templating etc.
Conventions Libraries Wiring Base config Library glue Bootstrap
Conventions Libraries Wiring Frameworks Zero
Conventions Libraries Wiring Frameworks Zero Because downloading stuff is hard!
None
Conventions Libraries Wiring
Conventions Libraries Wiring
Conventions Libraries Wiring Libraries Frameworks
Silex
Glorified Router
$app = new Silex\Application(); $app->get('/', function () { return "Hello
world!"; }); $app->run();
$app->get('/blog/{id}', 'Blog::showPost'); $app->post('/blog/{id}', 'Blog::createPost'); $app->put('/blog/{id}', function ($id) { ... })
->assert('id', '\d+');
$app->before(function () { ... }); $app->after(function () { ... });
$app->finish(function () { ... });
use Symfony\Component\HttpFoundation\Response; $app->error(function (\Exception $e, $code) { return new Response('Whoops!',
$code); });
$app->redirect('/hello'); $app->json($data); $app->sendFile($file);
Dependency Injection Container
class Application extends Pimple
$app['routes'] $app['url_matcher'] $app['kernel']
$app['routes']->add(...);
$app['debug'] = true;
$app['url_matcher'] = $app->share( function ($app) { return new MyUrlMatcher(); }
);
$app['foo'] = $app->share( function ($app) { return new Foo($app['bar']); }
);
$app['foo']
User Interface for Symfony2
http-kernel http-foundation event-dispatcher routing silex
REQ REP
None
silex app
silex app
diff -u symfony silex
--- symfony +++ silex @@ -1,3 +1 @@ -conventions -static
compilation -lots of services +choices
Glorified Router
Glorified Router Dependency Injection Container
Glorified Router Dependency Injection Container User Interface for Symfony2
Conventions Libraries Wiring Libraries Frameworks
Ω
Questions? @igorwesome silex.sensiolabs.org yolophp.com stackphp.com