Che cos'è un backend? Il lato server di un'applicazione, spiegato

Aggiornato: ottobre 2026

Un backend è un sistema lato server: codice, database e infrastruttura che gestiscono le richieste di un’app e ne conservano i dati dietro l’interfaccia. Ogni software con degli utenti ha due metà. La metà che vedono e toccano – schermate, pulsanti, moduli – è il frontend.

La metà che non vedono mai, quella che decide che cosa i pulsanti possono fare e ricorda che cosa è successo dopo che l’app è stata chiusa, è il backend. La vecchia analogia del meccanico regge ancora: chi guida lavora sul cruscotto, il meccanico lavora sul motore.

Questa voce parla del motore.

Video: What is a Backend? — Back4app on YouTube

Punti chiave

DomandaRisposta
La definizioneTutto ciò che sta dietro l’interfaccia: codice server, database, autenticazione, job, infrastruttura
Il confineUn’API – il frontend chiede, il backend valida, decide e risponde
I livelliAPI · logica di business · dati · autenticazione · lavoro in background · infrastruttura
I modelli di hostingBasato su server · serverless (FaaS e BaaS) · decentralizzato
La scelta predefinita nel 2026Affittare le parti generiche (database, autenticazione, API); scrivere solo la logica propria

Una richiesta, da un capo all’altro

Il modo più chiaro per vedere un backend è osservare una richiesta che lo attraversa. Un utente tocca “mostra le mie attività aperte”; ecco che cosa succede dall’altra parte dell’API:

GET /classes/Todo?where={"done":false} HTTP/1.1    ← il frontend chiede
Authorization: Bearer eyJhbGci…                     ← chi sta chiedendo

  backend ─┬─ livello API         analizza la richiesta, verifica il token
           ├─ autorizzazione      questo utente può leggere queste righe?
           ├─ logica di business  applica le regole (solo le attività del chiamante)
           ├─ livello dati        interroga il database, dà forma al risultato
           └─ risposta            200 OK + JSON, in meno di 100 ms

{ "results": [ { "objectId": "xKd91m", "title": "Ship the release", "done": false } ] }

La stessa conversazione dal lato del frontend, attraverso un SDK che la trasforma in una riga per piattaforma:

// JavaScript / Node.js — Back4app JS SDK
// The frontend asks the backend a question; the backend answers from the database
const query = new Parse.Query('Todo');
query.equalTo('done', false);
const open = await query.find();
// Under the hood: GET /classes/Todo?where={"done":false} → 200 OK + JSON
console.log(`${open.length} open todos`);

Frontend vs. backend

La distinzione più cercata, in una tabella:

CriterionFrontendBackend
Dove giraIl dispositivo dell’utente: browser, app mobile, desktopServer controllati dal team o da un provider
Che cosa possiedeLayout, interazione, stato locale, accessibilitàDati, regole di business, identità, sicurezza
Come fallisceUna schermata rotta per un utenteDati sbagliati o downtime per tutti gli utenti
Linguaggi tipiciJavaScript/TypeScript, Swift, Kotlin, DartJavaScript/TypeScript, Python, Java, Go, C#, Ruby, PHP, Rust
Che cosa significa “finito”Ha l’aspetto e la resa giustiÈ corretto, sicuro e ancora veloce sotto carico
Chi vede il codiceChiunque – viene distribuito sul dispositivoSolo il team – non lascia mai il server

Quell’ultima riga è quella che conta per la sicurezza: tutto ciò che sta nel frontend può essere letto e modificato dall’utente. Per questo validazione, permessi e segreti appartengono al backend, e per questo ogni chiamata API viene trattata come non attendibile finché il server non l’ha verificata.

Lato client e lato server

I due termini non sono due tipi di backend; sono le due estremità di ogni richiesta. Il lato client è qualunque codice giri sul dispositivo dell’utente – disegnare l’interfaccia, conservare lo stato temporaneo, inviare richieste.

Il lato server è qualunque codice giri su macchine che l’utente non può raggiungere – ricevere quelle richieste, eseguire la logica vera, leggere e scrivere il database e rispondere. “Backend” e “lato server” si usano in modo intercambiabile per quella seconda metà, e questa voce fa lo stesso.

Frontend, backend e l'API fra loroUn frontend sul dispositivo dell'utente invia richieste attraverso un'API al backend, che contiene logica di business, autenticazione e job in background, e dialoga con un database e con servizi esterni prima di restituire una risposta.

richiesta via API

risposta

Frontend
(browser, app mobile)

Backend
logica · auth · job

Database

Servizi esterni
(pagamenti, email, IA)

Un frontend sul dispositivo dell'utente invia richieste attraverso un'API al backend, che contiene logica di business, autenticazione e job in background, e dialoga con un database e con servizi esterni prima di restituire una risposta.

Di che cosa è fatto un backend

L’inquadramento classico chiama il frontend livello di presentazione e il backend livello di accesso ai dati, e descrive il backend come tre cose che lavorano insieme: le risorse hardware, il software che vi gira sopra e l’infrastruttura di rete fra queste e l’utente.

È ancora vero, ma è più utile leggere un backend come una pila di responsabilità, la maggior parte delle quali esiste in ogni prodotto a prescindere dalle dimensioni:

  • Livello API – il contratto pubblico: endpoint REST o GraphQL che il frontend e gli altri sistemi chiamano.
  • Logica di business – le regole che fanno del prodotto quel prodotto: che cos’è un ordine valido, chi può approvare che cosa, come si calcola un punteggio.
  • Livello dati – il database e il codice che lo modella, lo interroga e lo migra.
  • Autenticazione e autorizzazione – chi è il chiamante e che cosa può fare, applicate su ogni richiesta.
  • Lavoro in background – job e pianificazioni per tutto ciò che non dovrebbe bloccare una richiesta: email, report, sincronizzazioni, pulizie.
  • Infrastruttura – i server, i container o le funzioni su cui gira tutto, più deployment, logging, monitoring, backup e scalabilità.

I primi cinque sono lavoro di prodotto. Il sesto è operatività, ed è la parte che i modelli di hosting moderni esistono per eliminare.

Architetture di backend

La versione originale di questo argomento descriveva tre famiglie – serverless, orientata ai server e decentralizzata – e la tassonomia regge ancora. Quello che è cambiato è la scelta predefinita: nel 2026 la famiglia serverless è il punto di partenza della maggior parte dei nuovi prodotti, e “orientato ai server” significa sempre più container anziché macchine.

Backend basati su server. Il team esegue il provisioning di macchine, macchine virtuali o container, installa un runtime e un database e li opera. Massimo controllo, massima responsabilità: capacità, applicazione delle patch, disponibilità e turni di reperibilità restano in mano a chi sviluppa.

Gli argomenti classici a favore valgono ancora – un solo posto che condivide i dati fra più applicazioni, integrazioni dirette, un unico punto di accesso da mettere in sicurezza – e la forma interna può essere un monolite o dei microservizi; il modello operativo è lo stesso.

Backend serverless. Un provider fa girare l’infrastruttura e fattura a consumo. Due varianti: Function as a Service, dove si distribuisce codice personalizzato come funzioni che scalano da zero, e Backend as a Service, dove database, autenticazione, API, archiviazione e funzioni arrivano come piattaforma gestita.

Il guadagno è la velocità – nessun server da costruire prima della prima feature – e il prezzo è il controllo sui livelli più bassi. L’intera scala dei modelli di hosting è confrontata in IaaS vs. PaaS vs. BaaS vs. FaaS.

Backend decentralizzati. Nessun operatore unico; lo stato vive su una rete peer-to-peer, di solito open source, come nelle blockchain e nell’archiviazione indirizzata per contenuto. Bitcoin ed Ethereum sono gli esempi canonici, e il frontend di un’app del genere è spesso ospitato allo stesso modo, su reti come IPFS o Swarm anziché su un server.

Resistenza alla censura e nessun punto di controllo centrale, al costo di latenza, throughput e di un modello di programmazione molto diverso. Una nicchia con usi reali, non un sostituto generico degli altri due.

Basato su server vs. serverless vs. BaaS vs. decentralizzato

ModelloChi fa girare i serverChe cosa si scriveScala perIdeale per
Basato su serverIl proprio teamTutto: app, livello dati, operativitàAggiunta di capacità gestita in proprioRequisiti insoliti, controllo totale, team operativi già esistenti
Serverless (FaaS)Il providerFunzioni e livello datiInvocazione, da zeroLogica orientata agli eventi, traffico a picchi, team piccoli
BaaSIl providerSolo frontend + logica personalizzataConsumo, gestito dalla piattaformaApp mobile e web che hanno bisogno in fretta di autenticazione, dati e API
DecentralizzatoUna rete di peerSmart contract, clientCrescita della reteSistemi a fiducia minima, stato pubblico condiviso

Casi d’uso tipici

  • App mobile e web – account, dati che sopravvivono alla sessione e sincronizzazione fra dispositivi hanno tutti bisogno di un lato server.
  • Prodotti multiutente – tutto ciò in cui l’azione di un utente deve essere vista da un altro: collaborazione, marketplace, chat.
  • Pagamenti e operazioni sensibili – segreti e denaro non appartengono mai al dispositivo; il backend custodisce le chiavi e parla con i provider.
  • Integrazioni e automazione – webhook, job pianificati e pipeline che girano a prescindere dal fatto che un utente sia online o no.
  • Funzionalità IA – chiamate ai modelli, retrieval ed esecuzione di tool girano lato server, dove le chiavi restano private e i risultati si possono mettere in cache e verificare.

Quale approccio al backend scegliere? Matrice decisionale

SituazioneScegliere
Un nuovo prodotto mobile o web che ha bisogno di autenticazione, dati e API entro questa settimanaBaaS – configurare l’80 % generico, scrivere il 20 % che è proprio
Logica orientata agli eventi con traffico a raffiche e nessuna base stabileFunzioni serverless
Requisiti stringenti che le piattaforme gestite non riescono a esprimereBasato su server, con container e un vero piano operativo
Un sistema il cui intero scopo è che nessuno lo operiDecentralizzato
Un backend basato su server già esistente e lento da cambiareSpostare prima le parti generiche su un backend gestito, tenere il nucleo personalizzato

Limiti e trade-off

  • Il backend è dove gli errori diventano un problema di tutti. Un bug nel frontend rompe una schermata; un bug nel backend corrompe i dati o li espone. Validazione, permessi e test pesano qui più che in qualsiasi altra parte della codebase.
  • L’operatività non sparisce mai – si sposta. Le piattaforme gestite assorbono server, scalabilità e backup, ma qualcuno resta responsabile del modello di dati, delle regole di accesso e del budget. Conviene scegliere un modello in base alle responsabilità che si vogliono tenere, non a quelle che si vogliono dimenticare.
  • Controllo e velocità tirano in direzioni opposte. Più stack si gestisce in proprio, più si può personalizzare e più tutto richiede tempo; meno se ne gestisce, più in fretta si rilascia e più si dipende dalla roadmap e dai prezzi di un provider.
  • La rete fa parte del contratto. Ogni chiamata dal frontend al backend può essere lenta, fallire a metà o arrivare due volte; budget di latenza, ritentativi e idempotenza sono questioni di backend fin dal primo endpoint.
  • “Serverless” ha ancora dei server. Cold start, limiti di esecuzione e fatturazione a consumo sono vincoli reali; sono semplicemente le macchine di qualcun altro, con una curva di costo diversa.

Il backend su Back4app

Back4app è una piattaforma open-source di Backend as a Service (BaaS) che combina database gestito, API REST e GraphQL generate automaticamente, autenticazione, archiviazione di file e funzioni serverless con Cloud Code.

Mappato sui livelli descritti sopra: il livello dati e il livello API vengono generati dal modello di dati, autenticazione e permessi di classe stabiliscono chi può fare che cosa su ogni richiesta, Cloud Code contiene la logica di business e i job in background specifici del prodotto, e il livello infrastrutturale – hosting, scalabilità, backup, monitoring – è compito della piattaforma.

La richiesta sezionata in cima a questa pagina è il vero formato che Back4app scambia sulla rete, e gli SDK che l’hanno inviata sono il modo in cui il frontend parla con quel backend da ogni piattaforma principale.

Domande frequenti

Che cosa significa backend?

La parte di un'applicazione che gli utenti non vedono mai: il codice lato server, il database e l'infrastruttura che ricevono le richieste dall'interfaccia, applicano le regole di business, leggono e scrivono i dati e restituiscono una risposta. Se il frontend è il cruscotto di un'auto, il backend è il motore e l'impianto di alimentazione – invisibili dal sedile, responsabili di tutto ciò che si muove.

Che cos'è un frontend?

La parte di un'applicazione che gli utenti vedono e con cui interagiscono: schermate, pulsanti, moduli e navigazione, resi sul loro dispositivo da un browser o da un'app mobile. È il livello di presentazione: raccoglie l'input e mostra i risultati, ma le decisioni e i dati dietro quei risultati vivono nel backend, che il frontend raggiunge attraverso un'API.

Qual è la differenza tra frontend e backend?

Dove gira il codice e con chi parla. Il frontend gira sul dispositivo dell'utente – browser o app – e disegna le schermate, raccoglie l'input e chiama le API. Il backend gira su server controllati dal team (o da una piattaforma) e possiede i dati, le regole e la sicurezza. I due si incontrano a un'API: il frontend chiede, il backend decide e risponde.

Il backend e il server sono la stessa cosa?

Non esattamente. Un server è una macchina o un processo che risponde a richieste di rete; il backend è l'intero sistema dietro l'interfaccia – codice applicativo, database, autenticazione, job in background e i server su cui girano. Un solo backend può estendersi su molti server, e nelle architetture serverless il "server" si affitta al millisecondo e non si gestisce mai direttamente.

Quali sono i tipi di backend?

Raggruppati in base a chi fa girare i server: backend basati su server, dove il team esegue il provisioning di macchine o container e li opera; backend serverless, dove un provider gestisce l'infrastruttura e fattura a consumo – Function as a Service per il codice personalizzato e Backend as a Service per l'intero stack; e backend decentralizzati, dove nessuna parte singola opera il sistema e i peer condividono lo stato su una rete. La maggior parte dei prodotti oggi combina i primi due.

Un database è un backend?

No – è un componente di un backend, di solito il più importante. Un database archivia e recupera dati; il backend lo avvolge con un'API, validazione, permessi e logica, così che i client non lo tocchino mai direttamente. Una piattaforma che espone un database tramite API generate, con autenticazione e regole di accesso, è un backend; un database nudo non lo è.

Che cos'è il Backend as a Service (BaaS)?

Un backend gestito che si configura invece di costruirlo: database ospitato, API REST e GraphQL generate automaticamente, autenticazione degli utenti, archiviazione di file, notifiche push e funzioni serverless per la logica personalizzata. Restano da scrivere il frontend e le regole che contano per il prodotto; la piattaforma fa girare il resto. È il modo più rapido per ottenere un backend di produzione per un'app mobile o web.

Che cosa fa uno sviluppatore backend?

Progetta il modello di dati, costruisce e documenta le API, implementa la logica di business e i job in background, mette in sicurezza autenticazione e permessi e mantiene il sistema veloce e disponibile mentre il traffico cresce. In pratica una quota ampia del lavoro è operatività – deployment, monitoring, scalabilità, backup – ed è esattamente la quota che le piattaforme gestite assorbono.

Termini correlati

Confronta con

Fonti di approfondimento

Pronto a costruire il tuo backend?

Avvia il tuo progetto su Back4app in pochi minuti: database, autenticazione, API e Cloud Code inclusi. Nessuna carta di credito richiesta.

Scritto e revisionato da Back4app Engineering, Back4app Engineering · Pubblicato il 2026-10-19