Nette Application
Nette Application è il cuore del framework Nette e offre strumenti potenti per creare applicazioni web moderne. Mette a disposizione una serie di funzionalità eccezionali, che semplificano notevolmente lo sviluppo e migliorano la sicurezza e la manutenibilità del codice.
Installazione
Scaricate e installate la libreria con Composer:
composer require nette/application
Perché scegliere Nette Application?
Nette è sempre stata pioniera nelle tecnologie web.
Router bidirezionale: Nette dispone di un sistema di routing avanzato, unico nella sua bidirezionalità: non solo traduce gli URL in azioni dell'applicazione, ma sa anche generare gli URL in senso inverso. Questo significa che:
- potete cambiare in qualsiasi momento la struttura degli URL dell'intera applicazione senza dover modificare i template
- gli URL vengono canonizzati automaticamente, il che migliora la SEO
- il routing è definito in un unico punto, non sparso nelle annotazioni
Componenti e segnali: il sistema di componenti integrato, ispirato a Delphi e a React.js, è unico tra i framework PHP:
- permette di creare elementi di interfaccia riutilizzabili
- supporta la composizione gerarchica dei componenti
- offre una gestione elegante delle richieste AJAX tramite i segnali
- ricca libreria di componenti già pronti su Componette
AJAX e snippet: nel 2009 Nette ha introdotto un modo rivoluzionario di lavorare con AJAX, molto prima di soluzioni simili come Hotwire per Ruby on Rails o Symfony UX Turbo:
- gli snippet permettono di aggiornare solo parti della pagina senza dover scrivere JavaScript
- integrazione automatica con il sistema di componenti
- invalidazione intelligente delle sezioni della pagina
- trasferimento minimo di dati
Template Latte intuitivi: il sistema di template più sicuro per PHP, con funzionalità avanzate:
- protezione automatica contro l'XSS con escaping sensibile al contesto
- estensibile con filtri, funzioni e tag personalizzati
- ereditarietà dei template e snippet per AJAX
- ottimo supporto di PHP 8.x e del sistema di tipi
Dependency Injection: Nette sfrutta pienamente la dependency injection:
- passaggio automatico delle dipendenze (autowiring)
- configurazione nel chiaro formato NEON
- supporto per le factory dei componenti
Vantaggi principali
- Sicurezza: protezione automatica contro le vulnerabilità come XSS, CSRF e simili
- Produttività: meno codice da scrivere e più funzionalità, grazie a una progettazione intelligente
- Debugging: il debugger Tracy con il pannello del routing
- Prestazioni: cache intelligente, caricamento pigro dei componenti
- Flessibilità: modifica semplice degli URL anche a lavoro finito
- Componenti: un sistema unico di elementi di interfaccia riutilizzabili
- Modernità: pieno supporto di PHP 8.3+ e del sistema di tipi
Primi passi
- Come funzionano le applicazioni? – comprendere l'architettura di base
- Presenter – lavorare con i presenter e le azioni
- Template – creare template in Latte
- Routing – configurare gli indirizzi URL
- Componenti interattivi – usare il sistema di componenti
Compatibilità con PHP
| versione | compatibile con 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 |
Vale per le ultime versioni patch.