![Page 1: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/1.jpg)
Jak přežít Symfony 3?
Tomáš Votruba@votrubaT
![Page 2: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/2.jpg)
Co dělám, když zrovna nepřednáším?
Školím a spoluvytvářím Symfony, Doctrine a Nette
Organizuju Symfony komunity u nás
Programuju Lekarnu.cz
![Page 3: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/3.jpg)
Novinky v Symfony 3
![Page 4: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/4.jpg)
![Page 5: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/5.jpg)
![Page 6: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/6.jpg)
![Page 7: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/7.jpg)
1. vydání verzí2. deprecations3. nejzajímavějších novinkách4. kdy a jak migrovat
Dnes si povíme něco o...
![Page 8: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/8.jpg)
1. Sémantické verzování
- x.y.z BC break
- x.y.z nové featury
- x.y.z bug fixes
![Page 9: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/9.jpg)
1. Co umí jaká verze?
2.8 - všechny nové featury
3.0 = 2.8 bez BC kompatibility
![Page 10: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/10.jpg)
1. Min. PHP verze
![Page 11: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/11.jpg)
![Page 12: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/12.jpg)
![Page 13: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/13.jpg)
![Page 14: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/14.jpg)
1. Jak je to s dobou trvanlivosti?
![Page 15: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/15.jpg)
![Page 16: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/16.jpg)
![Page 17: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/17.jpg)
![Page 18: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/18.jpg)
1. vydání verzí2. deprecations3. nejzajímavějších novinkách4. kdy a jak migrovat
Dnes si povíme něco o...
![Page 19: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/19.jpg)
2. Pryč se starým kódem
![Page 20: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/20.jpg)
2. Štíhlé Symfony po fitku
![Page 21: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/21.jpg)
2. Štíhlé Symfony po fitku
- 10 %
![Page 22: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/22.jpg)
2. Štíhlé Symfony :)
ProFIT!
● rychlejší vývoj● snazší orientace● jednoznačné API
![Page 23: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/23.jpg)
1. vydání verzí2. deprecations3. nejzajímavějších novinkách4. kdy a jak migrovat
Dnes si povíme něco o...
![Page 24: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/24.jpg)
3. Změny v adresářové struktuře Symfony fullstack
![Page 25: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/25.jpg)
![Page 26: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/26.jpg)
![Page 27: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/27.jpg)
3. Zaměření na DX (Developer experience)● autowiring● debug-bar● adaptace PSR-3, LoggerInterface● rozdělení Security:
○ vyčlenění SecurityAclBundle○ nová komponenta Security Guard
![Page 28: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/28.jpg)
![Page 29: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/29.jpg)
![Page 30: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/30.jpg)
3. Autowiring závislostí služeb
![Page 31: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/31.jpg)
3. Autowiring - zápis služeb dříveservices:
myService:
class: MyBundle\MyService
arguments: [ dependency1, dependency2 ]
dependency1:
class: MyBundle\Dependency1
dependency2:
class: MyBundle\Dependency2
![Page 32: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/32.jpg)
3. Autowiring - nyníservices:
myService:
class: MyBundle\MyService
autowire: true
![Page 33: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/33.jpg)
3. Autowiring - nyníservices:
myService:
class: MyBundle\MyService
autowire: true
DI naparsuje konstruktor a:
- pokud jsou služby dostupné, předá je- pokud ne, registruje je jako privátní služby
![Page 34: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/34.jpg)
3. Autowiring - a co interface?services:
myService:
class: MyBundle\MyService
autowire: true
![Page 35: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/35.jpg)
3. Autowiring - a když je více stejných interfaců?services:
myService:
class: MyBundle\MyService
autowire: true
dependency1:
class: MyBundle\Dependency1
autowiring_types: MyBundle\MyInterface
![Page 36: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/36.jpg)
3. Nová komponenta: Polyfil
![Page 37: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/37.jpg)
3. Nová komponenta: Polyfil- podpora nových features v PHP do starších verzí- řeší kompatibilitu PHP pro některá extension a funkce- vhodná pro portabilitu napříč různými verzemi PHP
Use case:
- password_hash a password_* funkce od PHP 5.5 (balíček) ircmaxell/password-compat)
![Page 38: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/38.jpg)
3. Symfony profiler je šik
![Page 39: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/39.jpg)
![Page 40: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/40.jpg)
![Page 41: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/41.jpg)
![Page 42: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/42.jpg)
![Page 43: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/43.jpg)
1. vydání verzí2. deprecations3. nejzajímavějších novinkách4. kdy a jak migrovat
Dnes si povíme něco o...
![Page 44: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/44.jpg)
4. Proč migrovat?- protože Symfony je super!
![Page 45: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/45.jpg)
4. Proč migrovat?- protože Symfony je super!
![Page 46: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/46.jpg)
4. Proč migrovat?- protože Symfony je super! - raději kvůli businessu- potřebujete nové features- chcete upgradovat i PHP (min PHP 5.5)
![Page 47: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/47.jpg)
4. Jak migrovat?● Symfony < 2.3: na 2.3
● Symfony < 2.7: na 2.7
● Symfony 2.7: na 2.8 (vyjde souběžně s 3.0)
![Page 48: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/48.jpg)
4. Jak najít deprecated kód
![Page 49: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/49.jpg)
![Page 50: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/50.jpg)
4. PHPUnitBridge
composer require symfony/phpunit-bridge --dev
![Page 51: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/51.jpg)
![Page 52: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/52.jpg)
git clone [email protected]:sensiolabs-in/deprecation-detector.git
cd deprecation-detector
composer install
bin/deprecation-detector your-vendor
4. Deprecation detector
![Page 53: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/53.jpg)
![Page 54: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/54.jpg)
4. A co na to bundly?
FOSUserBundle FOSRestBundle
FOSElasticaBundle DoctrineBundle
SonataAdminBundle
KnpMenuBundle
![Page 55: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/55.jpg)
Vyzkoušej si Symfony 3 na vlastní kůžiSENSIOLABS_ENABLE_NEW_DIRECTORY_STRUCTURE=true composer create-
project symfony/framework-standard-edition myproject @dev
cd myproject
php bin/console server:run localhost:8001
Otevřeš v prohlížeči http://localhost:8001 …
![Page 56: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/56.jpg)
![Page 57: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/57.jpg)
Jak teda zvládneš Symfony 3 a...
Lepší DX?Nové featury?Best practices?
![Page 58: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/58.jpg)
LIKE A BOSS!
![Page 59: Jak přežít symfony 3 - 1. sraz přátel Symfony v Praze (in Czech)](https://reader031.vdocuments.site/reader031/viewer/2022021422/58cffcdb1a28abfc0a8b5bf5/html5/thumbnails/59.jpg)
Díky za pozornost
Chceš se o Symfony 3 dozvědět víc?
Pobavme se o tom osobně :)
www.tomasvotruba.cz