La compilazione è una delle fasi della creazione di un programma. Precisamente, di cosa si tratta? Scoprilo in questa definizione!
La creazione di un programma ha davvero tante fasi! Di solito, dopo il progetto iniziale, il programmatore inizia immediatamente a scrivere il codice sorgente – cioè la “ricetta” che serve per farlo funzionare; questo codice ti permette di istruire il tuo programma su come comportarsi nei vari casi che potrebbero presentarsi ed è scritto sotto forma di testo usando un linguaggio di programmazione (che sia C, Java, C++, Visual Basic o altri linguaggi).
Il codice sorgente può essere letto in modo “umano” (anche se non sei un programmatore riuscirai chiaramente a distinguere le parole delle varie istruzioni), ma il processore del computer o del tuo dispositivo – che dovranno eseguirlo – non sono in grado di capirlo poiché questi “signori” parlano soltanto il linguaggio macchina. Quindi, prima di poter funzionare e diventare un programma vero e proprio, al codice sorgente deve succedere qualcosa. E quel qualcosa è proprio la procedura di compilazione!
La compilazione è quella fase in cui il codice sorgente viene “tradotto” in linguaggio macchina da uno strumento (sempre software) che si chiama compilatore: in questo modo viene generato il file binario del programma o dell’app, che tu puoi eseguire facendo doppio click oppure toccandolo con il dito. Questo file generato avrà in sé la “traduzione” in linguaggio macchina di ciò che c’era scritto nel codice sorgente, così che il processore possa capirlo ed elaborarlo in modo corretto. Detto in modo facilissimo, se consideri il codice sorgente come gli ingredienti di una torta ed il programma completo come la torta pronta, il compilatore altro non è che il forno per cuocere la torta e renderla “adatta” al tuo palato!
Se il programmatore vorrà fare delle modifiche al suo programma dovrà comunque cambiare prima il suo codice sorgente (quello che l’essere umano può capire) e, per “trasferire” le sue modifiche anche al programma vero e proprio, dovrà ri-eseguire la procedura di compilazione e creare un altro file contenente il linguaggio macchina con le ultime modifiche applicate.