Symfony2 showcase
Upcoming SlideShare
Loading in...5
×
 

Symfony2 showcase

on

  • 3,776 views

Opis Symfony2

Opis Symfony2

Statistics

Views

Total Views
3,776
Views on SlideShare
1,605
Embed Views
2,171

Actions

Likes
0
Downloads
5
Comments
0

10 Embeds 2,171

http://xlab.pl 2042
http://www.sfexception.com 109
http://feeds.feedburner.com 7
http://translate.googleusercontent.com 5
http://matmati.net 3
http://www.alertize.com 1
http://webcache.googleusercontent.com 1
http://vtunnel.com 1
http://www.inoreader.com 1
http://www.slashdocs.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as OpenOffice

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Symfony2 showcase Symfony2 showcase Presentation Transcript

      • Symfony2 Showcase
      Wojciech Sznapka Gliwice, 28.01.2011
    • Symfony 2 – w skrócie
      • Przepisane od zera – nowa architektura, nowe podejście,
      • Brak kompatybilności wstecz,
      • Wymagane PHP 5.3,
      • Aktualnie dostępna wersja to Preview Release 5, wersja finalna planowana jest na początek marca 2011 (Symfony Live w Paryżu?).
    • Nowości
      • Struktura aplikacji – funkcjonalności pakowane w Bundle, odpowiedników pluginów z symfony 1.x,
      • Dependency Injection Container,
      • System szblonów Twig,
      • Doctrine 2.0 (wraz z Doctrine MongoDB ODM),
      • Wbudowana warstwa Security,
      • Formularze + Walidacja,
      • PHPUnit.
    • Bundle
      • Aplikacja składa się z jednego lub kilku Bundle's
      • Framework oprócz Kernela dostarcza również Bundle
      • Na Bundle składają się:
        • Kontrolery,
        • Zasoby (widoki, pliki konfiguracyjne, treść statyczna (css/js/grafiki),
        • Encje, formularze,
        • Commands (skrypty uruchamiane z CLI),
        • Klasy użytkowe,
        • Testy.
    • Dependency Injection
      • Wszystkie obiekty frameworka są dostępne przez kontener Dependency Injection, przez co można bez problemu je konfigurować, a nawet podmieniać,
      • Możemy dodawać własne obiekty do kontenera DI, co jest bardzo dobrą praktyką,
      • Większość klas składających się na framework implementuje różne interfejsy, co czyni całość jeszcze bardziej elastyczną.
    • Twig
      • Bardzo szybki system szablonów o prostej i intuicyjnej składni,
      • Przyjazny dla webdesignerów, nieobytych ze składnia PHP,
      • Chroni nas przed upychaniem logiki w widokach,
      • Daje większe możliwości niż standardowe szablony,
      • „ Stary” system szablonów PHP jest alternatywnie dostępny.
    • Doctrine 2 i Doctrine MongoDB ODM
      • Doctrine zostało przepisane od nowa,
      • Encje są „persistent” - nie dziedziczą z klasy bazowej, dzięki czemu są „lekkie”, a całość jest zauważalnie szybsza,
      • Doctrine i Doctrine ODM wspiera mapowanie annotacjami,
      • Z Doctrine została wydzielona warstwa abstrakcji bazy DBAL,
      • Nigdy więcej referencji cyklicznych :-)
    • Formularze i walidacja
      • Formularze przepisane od zera – wspierają napełnianie dowolnych obiektów,
      • Proste i intuicyjne API,
      • Walidacja oparta o konfigurację w pliku YML/XML lub annotacjach obiektu,
      • Dla każdego pola obiektu, można dodać różne ograniczenia („constraints”),
      • Walidacja działa bez problemu poza formularzami.
    • PHPUnit
      • Lime zostało zastąpione PHPUnitem,
      • Każdy Bundle powinien mieć swój zestaw testów,
      • Dostępne są narzędzia do testów funkcjonalnych (symulowanie zapytań HTTP), integrujące się z PHPUnitem.
    • PHPUnit
      • Lime zostało zastąpione PHPUnitem,
      • Każdy Bundle powinien mieć swój zestaw testów,
      • Dostępne są narzędzia do testów funkcjonalnych (symulowanie zapytań HTTP), integrujące się z PHPUnitem.
    • Podsumowanie
      • Symfony2 jest 3 razy szybsze niż Symfony 1.4 czy Zend Framework,
      • Zużywa połowę mniej pamięci,
      • Jest bardzo proste w nauce,
      • Pozwala na tworzenie przenośnego kodu, opakowanego w Bundle,
      • Jest elastyczne dzięki kontenerowi DI i Event Dispatcher'owi,
      • Jest wzorowane na sprawdzonych wzorcach, takich jak Symfony 1, Spring, Django, Ruby On Rails.
    • Dziękuję za uwagę :-)
        Pytania ? [email_address]