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

  1. Come funzionano le applicazioni? – Comprensione dell'architettura di base.
  2. Presenter – Lavorare con i presenter e le azioni.
  3. Template – Creazione di template in Latte.
  4. Routing – Configurazione degli indirizzi URL.
  5. 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.

versione: 4.0