Quelli che ho scelto sono i linguaggi che mi hanno dato lavoro fino ad oggi e per i quali noto una grandissima ricerca e ricevo una marea (è il termine più corretto!) di offerte di lavoro.
SQL
SQL è l’acronimo di Structured Query Language ed è un linguaggio standard nato per permettere agli utenti di un database relazionale di eseguire consultazioni e manipolare i dati.
In parole più semplici è tramite SQL che si può interagire con un database andando a leggere e scrivere informazioni necessarie al software che si sta sviluppando.
Quando un utente si registra su un sito web viene inserito in una tabella che raccoglierà tutti gli utenti e quando un utente effettuerà il login sarà in quella tabella che andremo a cercare tramite una query opportuna se l’utente esiste ed è registrato.
Tramite SQL non è solo possibile leggere ed inserire dati, anzi SQL ci permette anche di:
- manipolare i dati già inseriti
- creare tabelle, sequenze, più in generale schemi completi
- creare e gestire norme di sicurezza per l’utilizzo del database e delle sue tabelle
Se ti piacerebbe impararlo ti consiglio questo libro in inglese. In italiano posso consigliarti quest’altro.
Java
Java è un linguaggio di programmazione ad oggetti che è nato con lo scopo di essere il più possibile indipendente dalla piattaforma sul quale viene eseguito.
Java può essere utilizzato per creare programmi desktop a linea di comando, così come programmi desktop con interfaccia grafica (sì anche giochi!), app Android, per scrivere il backend di una web app, ecc.
L’utilizzo che ne faccio io per la maggior parte è scrivere codice e rilasciare un war sul server. Cerco di spiegartelo con parole semplici: scrivo la logica sul server che mi permette di far comunicare il sito web come lo vedi tu con il database.
Immaginando sempre la situazione per cui un utente si voglia registrare. L’utente inserisce dati in una form e clicca sul pulsante di invio. Questo pulsante chiamerà un indirizzo (endpoint) e da lì in poi entra in gioco Java che sa leggere i dati che gli arrivano, modificarli se necessario, fare un po’ di calcoli ed infine utilizzare SQL per scrivere i dati sul database.
Se vorresti approfondire il discorso ti consiglio alcuni libri:
- Manuale di Java 8 a questo indirizzo
- Java, The Complete Reference a questo indirizzo
JavaScript
JavaScript è un linguaggio di alto livello e viene utilizzato per la maggior parte dei software insieme ad HTML e CSS.
Viene utilizzato principalmente per rendere le pagine web molto interattive e rapide. Può manipolare le proprietà di un elemento HTML così come i tag HTML stessi. Può dar vita ad una logica per la gestione dell’interazione dell’utente con una pagina.
JavaScript oggi viene sempre più utilizzato insieme a librerie e framework quali ReactJS ed Angular. La dinamicità e la velocità delle schermate web è senza dubbio importante e personalmente utilizzo per la maggior parte del tempo ReactJS per costruire web application.
Nell’esempio di prima sulla registrazione dell’utente la mia web app potrebbe voler mostrare un messaggio di errore se la mail inserita è già presente nel database. Tale messaggio lo gestisco con JavaScript che in caso di risposta negativa del server fa vedere all’utente un messaggio di errore rosso.
Ho già scritto un articolo sui libri che dovresti leggere per impararlo e puoi trovarlo a questo indirizzo.
HTML
HTML è l’acronimo di HyperText Markup Language. Come detto quindi non è un linguaggio di programmazione, bensì un linguaggio di markup.
Se dovessi spiegarlo ad un bambino? HTML sono tutte quelle cose con cui puoi costruirci una casa: i balconi, le porte, il tetto, le finestre. Una pagina web è bella esteticamente grazie all’utilizzo del CSS.
HTML è uno standard molto importante perché permette agli sviluppatori di poter costruire un sito web praticamente identico su tutti i browser (peccato per il CSS.. mi capirà chi dopo aver visto il sito su Chrome e Firefox apre IE!).
Nell’esempio di prima il bottone di invio dei dati per la registrazione è costruito in HTML tramite il tag <button>.
Uno dei migliori libri a mio parere per imparare HTML e CSS insieme lo trovi a quì su Amazon.
CSS
CSS è l’acronimo di Cascading Style Sheets. E’ un linguaggio (non di programmazione) utilizzato per definire come debba essere formattata una pagina HTML.
Se dovessi spiegarlo ad un bambino? Dopo che hai costruito la casa con la sua porta, le quattro finestrelle, i balconi ed il tetto ti serve il CSS per colorare il tetto di rosso e la porta di marrone.
Il CSS ci mette a disposizione diverse proprietà per rendere le pagine web sempre più accattivanti. Non solo il colore di sfondo e del testo, ma in generale il grassetto, il corsivo, gli angoli arrotondati, lo spazio tra le sezioni, le ombre, le animazioni e tanto altro.
Per il CSS ti consiglio lo stesso libro già consigliato per l’HTML. Se vuoi imparare anche qualcosa nei riguardi della User Experience ti consiglio anche questo libro.
Conclusioni
Questi sono i linguaggi che utilizzo per la maggior parte del software che costruisco. Come già detto sono i linguaggi che mi hanno dato lavoro come dipendente ed anche lavoro come libero professionista.
Conoscerli ti permette di creare applicazioni affidabili, rapide e pronte a sostenere una grande quantità di traffico. Le pagine web sono rapide e permettono all’utente un’ottima esperienza e velocità di utilizzo.
Il server è sicuro e veloce svolgendo il compito di far comunicare le pagine web con il database aggiungendo a volte una logica di elaborazione dati.
Il database ti permette di gestire e manipolare i dati in maniera sicura.
Se vuoi iscriviti alla newsletter e non ti perderai i nuovi articoli. Mando da 1 a 4 mail al mese ricapitolando dove siamo arrivati con ogni guida. Con la newsletter hai anche accesso a libri ed ebook gratuiti, così come a coupon Udemy ? .
Per dubbi o domande scrivimi nei commenti ? .
Se ti è piaciuto l’articolo seguimi su Facebook e Twitter oppure rimani sempre aggiornato con la newsletter (da 1 a 4 mail al mese!).