DocSF

DocSF

Did You Know?

You can create any type of product documentation with Docy

Professionalità a confronto: front end e back end

Che cosa fa uno sviluppatore web? Lo ha spiegato un professionista del settore in una delle nostre precedenti interviste, affermando che questa figura si occupa del front end o del back end di un sito (o anche di tutti e due).

Ma che cosa significa, nel dettaglio, essere uno sviluppatore front end o back end? La domanda è importante per chi vuole lavorare in questo campo, non solo per capire quali sono i requisiti necessari, ma anche per comprendere gli annunci e le richieste delle aziende.

La definizione dei ruoli del front end e back end developer

Un sito – ma anche un’applicazione web –  è composto essenzialmente da due parti:

– una visibile, quella con cui interagisce l’utente,

– una “invisibile” all’esterno, “motore” di tutto il resto, senza la quale il sito non funzionerebbe.

Ecco dunque le definizioni:

– lo sviluppatore front end è colui che realizza la parte visibile del sito, l’interfaccia attraverso la quale navighiamo, vediamo foto e video, leggiamo testi o svolgiamo altre attività;

– lo sviluppatore back end si occupa del “dietro le quinte” del sito e crea quindi tutto quello che fa funzionare l’interfaccia, ma che l’utente non vede.

C’è poi un terzo ruolo: lo sviluppatore full stack, che sa realizzare sia il front end, sia il back end. Spesso lavora con altre figure specializzate, ma è comunque in grado di intervenire nello sviluppo di entrambe le parti di un sito o di un’app.

Sulla base delle differenze tra front end e back end, diverse sono anche le competenze richieste alle tre categorie di sviluppatori. Vediamo dunque le conoscenze specifiche che devono avere i programmatori front end, back end e full stack.

I linguaggi per lo sviluppatore front end: HTML, CSS, Javascript

Il programmatore front end sviluppa l’interfaccia del sito, ma è importante sottolineare che non si tratta solo di grafica (che è di competenza del web designer), ma di user experience, cioè di rendere piacevole e funzionale l’esperienza di chi deve navigare sul sito (o utilizzare l’applicazione).

Questo significa che l’utente deve poter usare il sito o l’app nel modo più semplice e veloce possibile, su ogni piattaforma e con ogni dispositivo: pc, tablet, smartphone.

Sono 3 i linguaggi che uno sviluppatore front end deve padroneggiare:

1. HTML (HyperText Markup Language, in italiano “linguaggio a marcatori per ipertesti”): è il linguaggio che definisce e organizza la struttura del contenuto del sito, il che cosa si vede, in modo che i browser possano “leggerla”. Tutti i siti sono costruiti con l’HTML.

2. CSS (Cascading Style Sheets, in italiano ‘fogli di stile a cascata’) definisce invece come si vede il sito, cioè l’aspetto che hanno le pagine web: colori, font, sfondi.

3. JavaScript: è il linguaggio che ha segnato la svolta nella costruzione dei siti web, perché permette di aggiungere alle pagine elementi interattivi e dinamici come pop-up e animazioni. Da non confondere con Java, impiegato per lo sviluppo di applicazioni e che fa invece parte degli “attrezzi del mestiere” di chi si occupa di back end.

JavaScript dispone di una serie di strumenti che facilitano il lavoro del programmatore:

– le librerie, insiemi di funzioni precompilate e specializzate che velocizzano l’attività di sviluppo: sono affidabili, perché testate continuamente dai programmatori JavaScript, e molte sono anche gratuite;

– i framework, infrastrutture logiche già predisposte per sviluppare un’applicazione: anche in questo caso il vantaggio è il risparmio di tempo, unito alla sicurezza di queste architetture. I framework JavaScript più usati sono Angular2, AngularJS, Backbone, Ember e Meteor.

Le competenze del programmatore back end: PHP, Java, Python e database

Lo sviluppatore back end opera “dietro le quinte”: il suo lavoro, dunque, deve essere funzionale a ciò che dovrà fare il suo collega che si occupa del front end. I due ruoli sono complementari e lavorano a stretto contatto per far sì che il sito sia efficiente, affidabile e anche gradevole.

Lo sviluppatore back end deve avere due competenze principali: i linguaggi di programmazione e la conoscenza dei database.

Tra i linguaggi di programmazione più richiesti per il back end ci sono:

Java, il linguaggio must have, perché, essendo indipendente dai sistemi operativi, è quello più usato per sviluppare le applicazioni web ed è quindi indispensabile per un programmatore;

PHP, nato per creare pagine web dinamiche (originariamente l’acronimo derivava da Personal Home Page) e utilizzato per sviluppare applicazioni web lato server, cioè di back end;

C#, il linguaggio derivato da C e C++ per la piattaforma .NET, usato per sviluppare le applicazioni Microsoft, ma anche per smartphone e videogames;

Python, considerato il “rivale” di Java, usato non solo per le applicazioni, ma anche per l’analisi dei dati;

Ruby, anch’esso per applicazioni, che dispone di diversi framework, il più noto dei quali è Ruby on Rails.

La conoscenza dei database è importante per uno sviluppatore back end, perché spesso i siti devono gestire dei dati (come per esempio nell’e-commerce). Tra le competenze per creare e far funzionare un database citiamo SQL, Oracle MySQL, Microsoft SQL Server, MongoDB.

Il full stack developer: la somma di front end e back end

Infine, lo sviluppatore full stack è la figura “completa”, che sa creare entrambe le parti di un sito e unisce quindi le competenze dei due colleghi che abbiamo appena esaminato.

Di conseguenza, il full stack developer dovrà conoscere:

– HTML, CSS e JavaScript (con librerie e framework) per lo sviluppo del front end

– Java (ma possibilmente anche un altro linguaggio) per lo sviluppo delle applicazioni di back end

– almeno un linguaggio per la creazione e la gestione dei database

Related Post

Miliardario con le criptovalute

Imprenditore cinese è sicuro di battere suo idolo Buff...

Salesforce Visual studio code connect sandbox

Per configurare visual studio code al tuo progetto Sale...

L’Euro di Draghi

Draghi come Ercole ha dimostrato di vincere tutte le su...

Leave a Comment