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.

Prostota i mozliwosci symfony2

Symfony jest z jednej strony kompleksowym frameworkiem, z drugiej zbiorem samodzielnych i niezależnych komponentów. Jest łatwy do nauki i jednocześnie szeroko konfigurowalny. Sprawdza się zarówno dla małych jak i dużych projektów. Pracę z nim cechuje szybkie tworzenie aplikacji.

  • Be the first to comment

Prostota i mozliwosci symfony2

  1. 1. PROSTOTA I MOŻLIWOŚCI FRAMEWORKA SYMFONY Natalia Stanko Kraków, 2014
  2. 2. O MNIE • EPI WZKS UJ, IS WFAIS UJ • web developer • coach • organizator Women in Technology w Krakowie • organizator hack4good hackathon 2
  3. 3. AGENDA • jak działają aplikacje internetowe • czym jest framework • czym jest Symfony? • architektura i komponenty Symfony • cechy Symfony • aplikacja w 10 minut • najbardziej użyteczne bundle 3
  4. 4. JAK DZIAŁAJĄ APLIKACJE INTERNETOWE 4
  5. 5. CZYM JEST FRAMEWORK? • szkielet do budowy aplikacji • "don't reinvent the wheel" • zarządzanie komunikacją z bazą danych • mechanizmy bezpieczeństwa • obsługa błędów • system szablonów (+/-) • generator kodu (+/-) 5
  6. 6. CZYM JEST SYMFONY? • Fabien Potencier • SensioLabs • PHP • open source • framework • zbiór komponentów 6
  7. 7. COMPOSER • getcomposer.org • packagist.org ! • dołączanie bibliotek (bundles) third party (i twoich własnych!) • rozwiązywanie zależności • przykład: Silex 7
  8. 8. “Prawdziwa wielkość ubrana jest w prostotę.” –Mikołaj Gogol 8
  9. 9. KOMPONENTY • konfiguracja YAML • app/console - interfejs linii poleceń • Doctrine ORM • migracje db • formularze 9
  10. 10. KOMPONENTY • Assetic • Dependency Injection Container • EventDispatcher 10
  11. 11. KOMPONENTY Annotacje ! /** * @Route("/{id}") * @Method("get") * @ParamConverter("post", class="SensioBlogBundle:Post") * @Template("SensioBlogBundle:Annot:show.html.twig") * @Security("has_role('ROLE_ADMIN')") */ public function showAction(Post $post) { }
  12. 12. KOMPONENTY • debug toolbar • system tłumaczeń • ACL db • PHPUnit, behat itp • scaffolding, generatory kodu • mechanizmy stronicowania, sortowania, filtrowania 12
  13. 13. KOMPONENTY Twig - http://twig.sensiolabs.org/ {% extends "layout.html" %} {{ include('page.html', sandboxed = true) }} {{ var|raw }} {% for user in users %} <li>{{ user.username }}</li> {% endfor %} 13
  14. 14. CECHY SYMFONY • prostota instalacji • wieloplatformowość • dla małych i dużych projektów • zgodność z najlepszymi standardami • łatwość rozbudowy • niezależność od systemu bd • automatyzacja pracy 14
  15. 15. SUPPORT • Symfony 2.3 wersja z długoterminowym wsparciem, 3 lata od maja 2013 • Symfony 2.5 ostatnia stabilna wersja • łatwy upgrade do wyższej wersji • bardzo dobra dokumentacja • wsparcie społecznosci 15
  16. 16. ZBUDUJ APLIKACJĘ W 10 MINUT 16
  17. 17. NAJBARDZIEJ UŻYTECZNE BUNDLE • http://symfony.com/blog/the-30-most-useful-symfony- bundles-and-making-them-even-better • https://packagist.org/ 17
  18. 18. NAJBARDZIEJ UŻYTECZNE BUNDLE • FOSUserBundle • FOSRestBundle • Sonata lub Admin Generator • NelmioApiDocBundle • MigrationsBundle 18
  19. 19. NAJBARDZIEJ UŻYTECZNE BUNDLE • Translatable • Timestampable • Sluggable • Loggable i Blameable • Softdeleteable 19
  20. 20. ! http://symfony.com/ ! http://sensiolabs.com/ 20
  21. 21. DZIĘKUJĘ ! pytania? nataliastanko.com ! @nataliastanko

×