Passare dal mondo strutturato di HTML e CSS a un framework JavaScript può sembrare un salto nel vuoto. Questa guida è pensata per colmare quel divario, introducendo i concetti di React base in modo semplice e diretto, mostrando come le tue competenze attuali siano il trampolino di lancio perfetto per creare interfacce utente moderne e interattive.
Perché React se già conosco HTML e CSS?
HTML e CSS sono fantastici per creare pagine web statiche. Definisci la struttura con i tag, applichi lo stile e il gioco è fatto. Tuttavia, quando un’applicazione web diventa complessa, con dati che cambiano e interazioni utente dinamiche, gestire tutto manipolando il DOM manualmente con JavaScript puro diventa macchinoso e soggetto a errori.
React introduce un approccio dichiarativo: descrivi come dovrebbe apparire la tua UI in un dato stato, e React si occuperà di aggiornare il DOM in modo efficiente quando i dati cambiano. Questo rende il codice più prevedibile e facile da manutenere.
Dal DOM al Virtual DOM: Il cambio di paradigma
Con HTML e JavaScript classico, ogni modifica (come cambiare il testo di un paragrafo) riscrive direttamente una porzione del Document Object Model (DOM) del browser. Questa operazione può essere lenta se ripetuta frequentemente.
React utilizza un “Virtual DOM”, una copia leggera del DOM reale tenuta in memoria. Quando lo stato della tua applicazione cambia, React crea una nuova versione del Virtual DOM, la confronta con la precedente (un processo chiamato “diffing”), e aggiorna solo le parti del DOM reale che sono effettivamente cambiate. Questo rende le applicazioni React incredibilmente performanti.
Comprendere la sintassi JSX di React base
Una delle prime cose che noterai in React è JSX (JavaScript XML). Sembra HTML, ma è in realtà una estensione della sintassi di JavaScript. Ti permette di scrivere la struttura dei tuoi componenti in un modo familiare e intuitivo.
HTML Tradizionale:
<div class="container">
<h1>Ciao Mondo!</h1>
<p>Questo è il mio primo paragrafo.</p>
</div>
Equivalente in JSX:
Nota due piccole differenze: `class` diventa `className` e tutto è scritto all’interno di un file JavaScript.
const mioElemento = (
<div className="container">
<h1>Ciao Mondo!</h1>
<p>Questo è il mio primo componente React.</p>
</div>
);
Pensare in Componenti
Il concetto fondamentale di React è la scomposizione dell’interfaccia utente in piccoli pezzi riutilizzabili chiamati “componenti”. Una pagina non è più un unico, monolitico file HTML, ma un albero di componenti.
- Un componente `Header` può contenere un `Logo` e un `MenuNavigazione`.
- Un componente `CardProdotto` può essere riutilizzato decine di volte in una griglia.
- Un `Bottone` può essere personalizzato e usato in tutta l’applicazione.

Un componente in React è semplicemente una funzione JavaScript che ritorna del JSX.
// Questo è un componente funzionale
function Benvenuto(props) {
return <h1>Ciao, {props.nome}</h1>;
}
// E lo puoi usare come un tag HTML
const app = <Benvenuto nome="Sara" />;
Props e State: Gestire i dati
I componenti comunicano e gestiscono i dati attraverso due meccanismi principali:
- Props (Properties): Sono dati passati da un componente genitore a un componente figlio. Sono di sola lettura, come gli attributi HTML. Nell’esempio sopra, `nome=”Sara”` è una prop.
- State: È una memoria interna di un componente. Quando lo state di un componente cambia, React riesegue il rendering del componente per riflettere la modifica. È ciò che rende le UI interattive.
Creare il Tuo Primo Progetto React
Oggi, avviare un progetto React è semplicissimo grazie a strumenti come Vite. Non è più necessario configurare Webpack o Babel manualmente.
Apri il tuo terminale e digita questo comando:
npm create vite@latest il-mio-primo-progetto-react -- --template react
Segui le istruzioni a schermo, entra nella nuova cartella (`cd il-mio-primo-progetto-react`), esegui `npm install` e poi `npm run dev`. Il tuo primo progetto React sarà attivo e funzionante!
Conclusione: Le tue competenze sono già valide
Passare a React da HTML/CSS non significa buttare via ciò che sai. Al contrario, la tua comprensione della struttura del DOM e dello styling è fondamentale. JSX ti sembrerà subito familiare, e il concetto di componenti ti aiuterà a organizzare il tuo codice in modo più pulito e scalabile.
Questa guida ha coperto solo la superficie. Ma ora hai la conoscenza di React base necessaria per capire la filosofia dietro la libreria e per iniziare a costruire i tuoi primi componenti. Il passo successivo è esplorare concetti come hooks (in particolare `useState` e `useEffect`) e la gestione degli eventi. Buon coding!

