Nette Application
Nette Application to rdzeń frameworka Nette, dostarczający potężne narzędzia do tworzenia nowoczesnych aplikacji webowych. Oferuje szereg wyjątkowych możliwości, które znacząco upraszczają tworzenie aplikacji oraz poprawiają bezpieczeństwo kodu i łatwość jego utrzymania.
Instalacja
Bibliotekę pobierzesz i zainstalujesz za pomocą Composera:
composer require nette/application
Dlaczego wybrać Nette Application?
Nette od zawsze było pionierem technologii webowych.
Dwukierunkowy router: Nette dysponuje zaawansowanym systemem routingu, unikalnym dzięki swojej dwukierunkowości – nie tylko tłumaczy URL na akcje aplikacji, ale potrafi też generować URL w drugą stronę. Oznacza to, że:
- strukturę URL całej aplikacji możesz zmienić w dowolnej chwili bez konieczności modyfikowania szablonów
- URL są automatycznie kanonizowane, co poprawia SEO
- routing definiowany jest w jednym miejscu, a nie rozproszony w adnotacjach
Komponenty i sygnały: Wbudowany system komponentów zainspirowany Delphi i React.js jest unikalny wśród frameworków PHP:
- pozwala tworzyć elementy UI wielokrotnego użytku
- wspiera hierarchiczne składanie komponentów
- oferuje eleganckie obsługiwanie żądań AJAX za pomocą sygnałów
- bogata biblioteka gotowych komponentów na Componette
AJAX i snippety: Nette wprowadziło rewolucyjny sposób pracy z AJAX-em już w 2009 roku, na długo przed podobnymi rozwiązaniami, jak Hotwire dla Ruby on Rails czy Symfony UX Turbo:
- snippety pozwalają aktualizować tylko części strony bez konieczności pisania JavaScriptu
- automatyczna integracja z systemem komponentów
- inteligentne unieważnianie sekcji strony
- minimalny transfer danych
Intuicyjne szablony Latte: Najbezpieczniejszy system szablonów dla PHP z zaawansowanymi możliwościami:
- automatyczna ochrona przed XSS z escapowaniem zależnym od kontekstu
- rozszerzalny o własne filtry, funkcje i tagi
- dziedziczenie szablonów i snippety dla AJAX-a
- doskonałe wsparcie dla PHP 8.x wraz z systemem typów
Wstrzykiwanie zależności: Nette w pełni korzysta z wstrzykiwania zależności:
- automatyczne przekazywanie zależności (autowiring)
- konfiguracja w przejrzystym formacie NEON
- wsparcie dla fabryk komponentów
Główne korzyści
- Bezpieczeństwo: automatyczna ochrona przed podatnościami, takimi jak XSS, CSRF itd.
- Produktywność: mniej pisania, więcej możliwości dzięki przemyślanej konstrukcji
- Debugowanie: debugger Tracy z panelem routingu
- Wydajność: inteligentny cache, leniwe ładowanie komponentów
- Elastyczność: łatwa zmiana URL nawet po ukończeniu aplikacji
- Komponenty: unikalny system elementów UI wielokrotnego użytku
- Nowoczesność: pełne wsparcie dla PHP 8.3+ i systemu typów
Pierwsze kroki
- Jak działają aplikacje? – zrozumienie podstawowej architektury
- Presentery – praca z presenterami i akcjami
- Szablony – tworzenie szablonów w Latte
- Routing – konfigurowanie adresów URL
- Komponenty interaktywne – korzystanie z systemu komponentów
Zgodność z PHP
| wersja | zgodna z PHP |
|---|---|
| Nette Application 3.3 | PHP 8.3 – 8.5 |
| Nette Application 3.2 | PHP 8.1 – 8.5 |
| Nette Application 3.1 | PHP 7.2 – 8.3 |
| Nette Application 3.0 | PHP 7.1 – 8.0 |
| Nette Application 2.4 | PHP 5.6 – 8.0 |
Dotyczy najnowszych wersji patch.