Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)

377 views

Published on

Co přinese Symfony 3? Jak nám ulehčí práci a jak v bezpečí zmigrovat? Sami si vyzkoušejte novinky na Symfony 3.0 sandboxu v pár krocích.

Published in: Software
  • Be the first to comment

Tomáš Votruba - Jak přežít Symfony 3 (1. sraz přátel Symfony v Praze)

  1. 1. Jak přežít Symfony 3? Tomáš Votruba @votrubaT
  2. 2. 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
  3. 3. Novinky v Symfony 3
  4. 4. 1. vydání verzí 2. deprecations 3. nejzajímavějších novinkách 4. kdy a jak migrovat Dnes si povíme něco o...
  5. 5. 1. Sémantické verzování - x.y.z BC break - x.y.z nové featury - x.y.z bug fixes
  6. 6. 1. Co umí jaká verze? 2.8 - všechny nové featury 3.0 = 2.8 bez BC kompatibility
  7. 7. 1. Min. PHP verze
  8. 8. 1. Jak je to s dobou trvanlivosti?
  9. 9. 1. vydání verzí 2. deprecations 3. nejzajímavějších novinkách 4. kdy a jak migrovat Dnes si povíme něco o...
  10. 10. 2. Pryč se starým kódem
  11. 11. 2. Štíhlé Symfony po fitku
  12. 12. 2. Štíhlé Symfony po fitku - 10 %
  13. 13. 2. Štíhlé Symfony :) ProFIT! ● rychlejší vývoj ● snazší orientace ● jednoznačné API
  14. 14. 1. vydání verzí 2. deprecations 3. nejzajímavějších novinkách 4. kdy a jak migrovat Dnes si povíme něco o...
  15. 15. 3. Změny v adresářové struktuře Symfony fullstack
  16. 16. 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
  17. 17. 3. Autowiring závislostí služeb
  18. 18. 3. Autowiring - zápis služeb dříve services: myService: class: MyBundleMyService arguments: [ dependency1, dependency2 ] dependency1: class: MyBundleDependency1 dependency2: class: MyBundleDependency2
  19. 19. 3. Autowiring - nyní services: myService: class: MyBundleMyService autowire: true
  20. 20. 3. Autowiring - nyní services: myService: class: MyBundleMyService autowire: true DI naparsuje konstruktor a: - pokud jsou služby dostupné, předá je - pokud ne, registruje je jako privátní služby
  21. 21. 3. Autowiring - a co interface? services: myService: class: MyBundleMyService autowire: true
  22. 22. 3. Autowiring - a když je více stejných interfaců? services: myService: class: MyBundleMyService autowire: true dependency1: class: MyBundleDependency1 autowiring_types: MyBundleMyInterface
  23. 23. 3. Nová komponenta: Polyfil
  24. 24. 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)
  25. 25. 3. Symfony profiler je šik
  26. 26. 1. vydání verzí 2. deprecations 3. nejzajímavějších novinkách 4. kdy a jak migrovat Dnes si povíme něco o...
  27. 27. 4. Proč migrovat? - protože Symfony je super!
  28. 28. 4. Proč migrovat? - protože Symfony je super!
  29. 29. 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)
  30. 30. 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)
  31. 31. 4. Jak najít deprecated kód
  32. 32. 4. PHPUnitBridge composer require symfony/phpunit-bridge --dev
  33. 33. git clone git@github.com:sensiolabs-in/deprecation-detector.git cd deprecation-detector composer install bin/deprecation-detector your-vendor 4. Deprecation detector
  34. 34. 4. A co na to bundly? FOSUserBundle FOSRestBundle FOSElasticaBundle DoctrineBundle SonataAdminBundle KnpMenuBundle
  35. 35. Vyzkoušej si Symfony 3 na vlastní kůži SENSIOLABS_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 …
  36. 36. Jak teda zvládneš Symfony 3 a... Lepší DX? Nové featury? Best practices?
  37. 37. LIKE A BOSS!
  38. 38. Díky za pozornost Chceš se o Symfony 3 dozvědět víc? Pobavme se o tom osobně :) www.tomasvotruba.cz

×