Symfony 2 - informacje i wrażenia


15 stycznia 2012


Symfony 2 miał premierę w ubiegłym roku i przez wiele osób moment ten został uznany jako początek nowej ery wytwarzania aplikacji webowych w PHP. Czy rzeczywiście? Czy nowa wersja jest lepsza? Czy warto tworzyć w nim nowy projekt

Chcący rozpocząć pracę z narzędziem programista zmuszony jest przyswoić nową wiedzę, ponieważ Symfony 2 nie jest kontynuacją poprzedniego wydania. 

Framework wykorzystuje dobrodziejstwa PHP 5.3, posiada zupełnie nowy silnik (składający się z niezależnych komponentów). Stworzono całkowicie nową architekturę. Tworzone aplikacje składają się teraz z pakietów (Bundle) o własnej, zupełnie niezależnej, strukturze dzięki czemu mogą być użyte ponownie w innych aplikacjach. Nowa wersja ma sprawić, że proces wytwarzania aplikacji będzie przebiegał krócej a aplikacje będą szybsze, bezpieczniejsze.
Symfony 2 jest w pełni konfigurowalne. Sami decydujemy czy użyjemy do tego celu YAML, XML, PHP czy może adnotacji. W warstwie widoku szablony wykorzystują system szablonowania Twig, za którym także stoją osoby z Sensio Labs oraz Fabien Potencier. Szablony przypominają te z Django. Swoją drogą twórcy Symfony 2 stworzyli narzędzie, które pod wieloma aspektami przypomina Django. Silną stroną frameworka mają być także komponenty związane z bezpieczeństwem, routingiem, Doctrine 2. Mocną stroną Symfony jest możliwość korzystania z konsoli. Nie inaczej jest z nową wersją, w której z lini poleceń możemy używać interaktywnych generatorów kodu.
O nowych funkcjonalnościach można pisać dużo. Sami twórcy wymieniają 6 głównych technicznych powodów dla których warto zainteresować się nową wersją: szybkość, nieograniczona elastyczność, możliwość rozbudowy, stabilność i trwałość, radość tworzenia, łatwość nauki.

Najlepszym sposobem nauki nowego narzędzia jest stworzenie w nim aplikacji, dlatego postawiłem sobie cel i przy użyciu Symfony 2 realizuję nowy projekt. Na chwilę obecną stwierdzam, że w Symfony 2 rzeczywiście koduje się szybciej i przyjemniej. Przy użyciu odpowiednich poleceń z linii komend już po chwili możemy mieć szkielet naszej aplikacji. Pewne problemy sprawiało mi utworzenie pakietu odpowiedzialnego za zarządzanie użytkownikami ale udało się pokonać i ten problem (Fotografia: Panel logowania). Nowa wersja frameworka jest rzeczywiście w pełni konfigurowalna i łatwiejsza w nauce (np. tłumaczenie wiadomości przekazywanych przez walidatory a także lokalizacja formularzy wymaga jedynie ustawienia domyślnej lokalizacji w config.yml i utworzeniu pliku z przetłumaczonymi wiadomościami). Tworzone formularze domyślnie mają włączoną walidację po stronie klienta (wykorzystanie HTML 5), lecz dla bezpieczeństwa lepiej stosować walidację po stronie serwera, która także jest w pełni konfigurowalna (YAML, XML, PHP, adnotacje) (Fotografia: Walidacja po stronie serwera). Walidacja po stronie klienta wraz ze odpowiednimi stylami CSS sprawia, że nie musimy używać JavaScriptu a efekt będzie podobny (Fotografia: Walidacja po stronie klienta). Niestety korzystając z przeglądarki Internet Explorer w wersji < 10 nie można doświadczyć tego rodzaju walidacji (obsługa CSS 3 i HTML 5 w tym aspekcie leży).

Powyżej zawarłem moje bieżące wrażenia z pracy z frameworkiem. Narzędzie sprawia wrażenie stabilnego, przemyślanego i innowacyjnego. Nie popełnicie błędu jeżeli postanowicie także poświęcić czas na poznanie Symfony 2 i użycia go przy realizacji nowego projektu.

Co zawiera blog?

Na blogu umieszczam wpisy dotyczące mojej pracy, zainteresowań. Głowna tematyka to programowanie oraz recenzje płyt oraz książek.

Raport sportowy #1


Sportowe podsumowanie tygodnia

Żywy i martwy kot


Na początku miesiąca swoją premierę miała najnowsza wersja systemu operacyjnego ...

Raport sportowy #6


Zdjęcie: Aziz Acharki, Unsplash

The Prodigy - The Fat Of The Land


20 lat jak jeden dzień

Boards Of Canada - Music Has The Right ...


Jedna z najważniejszych płyt IMD, ambient, downtempo

Raport sportowy #9


Zdjęcie: Andrew Gook, Unsplash