Monforte srl
Frontend vs backend

Front-end vs Back-end: cane e gatto o due facce della stessa medaglia?

Se mastichi qualche concetto di informatica, allora saprai che esistono due tipi principali di programmazione: front-end e back-end. Nella letteratura scolastica vengono spesso rappresentati come discipline separate, tanto da poter essere svolte da due figure professionali diverse (fatta eccezione dei programmatori full-stack che riescono a padroneggiare entrambe). 

Si tratta, però, di due ambiti che non possono in alcun modo comunicare tra di loro? In questo articolo approfondiremo meglio la questione, cercando di dare una risposta a questa domanda. 

Front-end, ovvero quello che vede l’utente

La programmazione front-end è quella di cui l’utente fa esperienza diretta: sulla base delle indicazioni del team grafico, delle richieste del cliente o del project manager, lo sviluppatore front-end sposta, crea e colora elementi, implementa funzioni interattive, struttura pagine… oltre a fare test e debugging su quello che ha realizzato. 

Ecco un esempio: la pagina di un sito web ha bisogno di un restyling, in particolare bisogna creare dei nuovi box con sfondo azzurro, testo incolonnato a sinistra e icona centrata a destra. Questo è un lavoro per un programmatore front-end.

Back-end: c’è, ma non si vede

La programmazione back-end include tutto ciò che riguarda il server utilizzato. Lo sviluppatore back-end si occupa di creare e gestire database da integrare con le piattaforme. Il codice è eseguito sul server, senza alcun accesso al “monitor” dell’utente.

Cosa significa in concreto? Facciamo un esempio: ogni utente ha il suo account personale su un’app di ecommerce. A ogni accesso, vengono mostrati i prodotti più pertinenti per ogni utente in base alle informazioni presenti sul suo account e agli ordini già effettuati. Questo funzionamento è gestito grazie alla programmazione back-end. 

In altre parole, la programmazione back-end crea l’infrastruttura su cui poi si basa tutto ciò che è front-end.  

Quindi front-end e back-end non hanno punti in comune?

Formalmente no: sono due branche della programmazione che operano in ambiti diversi e richiedono diversi tipi di professionisti. 

Nonostante questo divario di fondo, però, front-end e back-end hanno uno scopo comune: fornire accessibilità all’utente su siti, app… Insomma, lavorano insieme per garantire la navigazione online. Come?

  1. L’utente accede a un browser e clicca su un link o inserisce direttamente un’URL nella barra di ricerca
  2. Il browser invia una o più richieste al server di riferimento
  3. Il browser attende una risposta dal server
  4. L’utente aspetta che il browser finisca il rendering del sito
  5. L’utente accede al sito e interagisce con le sue parti
  6. Ogni interazione dà il via a una serie di richieste al server per ricevere informazioni, elementi personalizzati…

Dall’intenzione dell’utente, dalla sua prima ricerca sul browser, scaturisce la silenziosa alleanza tra front-end e back-end. Inoltre, la programmazione back-end svolge una funzione protettiva nei confronti di quanto sviluppato lato front-end: ad esempio, se un sito fosse sviluppato solo lato front-end e prevedesse un form di contatto, un utente con qualche rudimento di programmazione potrebbe usare lo strumento Ispeziona per scoprire i dati immessi dagli altri utenti. Grazie al back-end si può creare un token univoco e non leggibile per ogni utente così da impedire eventuali incursioni su Ispeziona ed eliminare eventuali utenti indesiderati. 

L’importanza della comunicazione

Abbiamo visto come le due facce principali della programmazione si integrino tra di loro. A livello di piattaforma, tutto ciò non sarebbe possibile, però, senza una buona comunicazione tra i team tecnici. A seconda del progetto, gli sviluppatori devono collaborare in modo più o meno stretto per dare vita a un prodotto efficace. 

In mancanza di una buona comunicazione, si rischierebbe di avere discrepanze negli sviluppi a discapito dell’esperienza di utilizzo dell’utente. Non si tratta sempre di un presupposto scontato: a livello organizzativo, spesso i due team lavorano separatamente e tendono a non “contaminarsi” a vicenda. 

In conclusione

Possono cane e gatto andare d’accordo? La risposta è: sì, mantenendo le proprie diversità possono integrarsi e addirittura collaborare. Allo stesso modo, programmazione front-end e back-end possono e devono lavorare insieme per garantire una UX ottimale e una piena accessibilità a siti e app. 

botmon
Hi! How can we help you?