Nette Application
Nette Application è il cuore del framework Nette e fornisce potenti strumenti per la creazione di moderne applicazioni web. Offre una serie di funzionalità eccezionali che semplificano notevolmente lo sviluppo e migliorano la sicurezza e la manutenibilità del codice.
Installazione
È possibile scaricare e installare la libreria utilizzando lo strumento Composer:
composer require nette/application
Perché scegliere Nette Application?
Nette è sempre stato un pioniere nel campo delle tecnologie web.
Router bidirezionale: Nette dispone di un sistema di routing avanzato, unico per la sua bidirezionalità: non solo traduce gli URL in azioni dell'applicazione, ma può anche generare indirizzi URL a ritroso. Ciò significa che:
- È possibile modificare in qualsiasi momento la struttura degli URL dell'intera applicazione senza dover modificare i template.
- Gli URL vengono automaticamente canonizzati, migliorando 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 React.js, è del tutto eccezionale tra i framework PHP:
- Permette di creare elementi UI riutilizzabili.
- Supporta la composizione gerarchica dei componenti.
- Offre un'elegante gestione delle request AJAX tramite segnali.
- Una ricca libreria di componenti pronti è disponibile su Componette.
AJAX e snippet: Nette ha introdotto un modo rivoluzionario di lavorare con AJAX già nel 2009, molto prima di soluzioni simili come Hotwire per Ruby on Rails o Symfony UX Turbo:
- Gli snippet consentono di aggiornare solo parti della pagina senza dover scrivere JavaScript.
- Integrazione automatica con il sistema dei componenti.
- Invalidazione intelligente di parti delle pagine.
- Quantità minima di dati trasferiti.
Template intuitivi Latte: Il sistema di template più sicuro per PHP con funzionalità avanzate:
- Protezione automatica contro XSS con escaping sensibile al contesto.
- Estensibilità tramite filtri, funzioni e tag personalizzati.
- Ereditarietà dei template e snippet per AJAX.
- Eccellente supporto per PHP 8.x con sistema di tipi.
Dependency Injection: Nette sfrutta appieno la Dependency Injection:
- Passaggio automatico delle dipendenze (autowiring).
- Configurazione tramite il chiaro formato NEON.
- Supporto per le factory di componenti.
Vantaggi principali
- Sicurezza: Difesa automatica contro vulnerabilità come XSS, CSRF, ecc.
- Produttività: Meno codice da scrivere, più funzionalità grazie a un design intelligente.
- Debugging: Tracy debugger con pannello di routing.
- Prestazioni: Cache intelligente, lazy loading dei componenti.
- Flessibilità: Facile modifica degli URL anche dopo il completamento dell'applicazione.
- Componenti: Sistema unico di elementi UI riutilizzabili.
- Moderno: Pieno supporto per PHP 8.4+ e sistema di tipi.
Per iniziare
- Come funzionano le applicazioni? – Comprensione dell'architettura di base.
- Presenter – Lavorare con i presenter e le azioni.
- Template – Creazione di template in Latte.
- Routing – Configurazione degli indirizzi URL.
- Componenti interattivi – Utilizzo del sistema di componenti.
Compatibilità con PHP
versione | compatibile con PHP |
---|---|
Nette Application 4.0 | PHP 8.1 – 8.4 |
Nette Application 3.2 | PHP 8.1 – 8.4 |
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 |
Si applica all'ultima versione patch.