1 / 39

Zend Framework 2

Zend Framework 2. Svět se změnil!. Zapomeňte!. Všechno je jinak!. 5.3. ZF 2 beta 1. Coding Standards. Zend Loader. Zend Loader. Classmap PSR-0 Resource loader Autoloader factory Vyšší výkon oproti ZF1. Dependency Injection. class Person { public $ db ;

pilis
Download Presentation

Zend Framework 2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Zend Framework 2

  2. Svět se změnil!

  3. Zapomeňte!

  4. Všechno je jinak!

  5. 5.3

  6. ZF 2 beta 1

  7. CodingStandards

  8. Zend\Loader

  9. Zend\Loader • Classmap • PSR-0 • Resourceloader • Autoloaderfactory • Vyšší výkon oproti ZF1

  10. DependencyInjection

  11. class Person { public$db; publicfunction__construct($dbConfig){ $this->db=newDbAdapter($dbConfig); } } $person=new Person($dbConfig); $person->...

  12. class Person { public$db; publicfunctionsetDb(DbAdapter$dbAdapter){ $this->db=$dbAdapter; } } $person=new Person(); $person->setDb(newDbAdapter($dbConfig)); $person->...

  13. DependencyInjection Žádné interní závislosti  snadnější testování Konec řešení „jak to tam předám?“ (skončí většinou na Zend_Registry) Čistější kód

  14. Zend\Di Napříč celým frameworkem  např. tahání závislostí do controlleru Není potřeba new, stačí settery a ono se to automagicky naplní

  15. Zend\Mvc

  16. Zend\Mvc • Dispatchproces - spoléhá na DI • ActionController • RestController • interface Dispatchable

  17. Moduly

  18. Moduly • „balíčky“ • v aplikaci neupravovat ani do nich neukládat soubory - snadný upgrade • .phar, .tar • mergují konfiguraci s aplikací

  19. Moduly • vlastní autoloading • bude cli skript na instalaci • výrazně jednodušší sdílení modules.zendframework.com

  20. View

  21. Zend\View • autoescape • jiné předávání proměnných • $products místo $this->products • bude snazší si vyměnit viewčko

  22. Routování

  23. Routování • normální / binární strom  výkon ! • routujese na DI alias ne na Modul/Controller/Action • RouteMatch • interface Dispatchable

  24. Request/Response

  25. Request/Response • sestaveny přesně podle RFC • minitřídyna jednotlivé elementy HTTP (Location, ContentType, etc) • posílají se v rámci MVC eventů • Response agreguje výsledky

  26. EventManager

  27. EventManager • přes eventy je řešeno skoro všechno • dispatch, routing, … • veškeré hooky • dispatch.pre • dispatch.post

  28. Pluginy/Helpery/…

  29. Pluginy/Helpery/… • sjednocené – interface Pluggable • zjednodušené načítání (z pohledu programové složitosti) • trochu složitější na rozjetí pro vývojáře (explicitně se registrují helpery) • viewhelpery - __invoke() - is_callable()

  30. Jak začít?

  31. Jak začít? • PHP 5.3 • DI • Tutorial: Getting started with Zend Framework 2 (beta1) (by Akrabat) • Applications skeleton + module

  32. Výhody • máte přehled co se děje • změny nejsou tak velké – komponenty přibývají postupně • můžete nově věci zkusit používat ještě než vyjdou • můžete zasáhnout do vývoje

  33. Nevýhody • cokoli, co uděláte, se může rozbít • musíte koukat do zdrojáku • není to na produkční nasazení

  34. Ideální čas na přestup!

  35. Nenechte si ujet vlak!

  36. Děkujeme za pozornost!

  37. Martin Hujer @MartinHujer Tomáš Fejfar @tomasfejfar

More Related