Qual è la differenza tra un programma di installazione, il codice sorgente e un pacchetto binario quando si installa un software?

Vediamo se posso fare una terribile analogia: il programma che vuoi installare è come un pasto di 3 portate.

Il pacchetto binario è praticamente il cibo stesso. È la cosa che vuoi mangiare. È stato preparato per i vostri ospiti specifici, sapendo che vi piacciono le cose piccanti, che uno di voi è intollerante al lattosio, ecc.

Più realisticamente, il binario è l'insieme di istruzioni che il vostro computer capisce come eseguire per far funzionare il software. È stato specificamente adattato per un particolare tipo di computer/OS. Un binario usato per un Mac contro un PC (per esempio) sarà molto diverso. Se metti un binario Linux sulla tua macchina Windows 8, per esempio, probabilmente non funzionerà, causerà solo un errore.

L'installatore è il cameriere-- prende il tuo cibo pronto da mangiare. Non mangereste il vostro cibo infilando la faccia nella teglia, volete che sia servito nel vostro piatto con una forchetta e un coltello, in porzioni appropriate per voi. L'installatore fondamentalmente prepara il vostro cibo perché possiate mangiarlo.

Un installatore fondamentalmente fa il lavoro di preparazione sul vostro computer. Il binario può avere tutte le istruzioni di cui ha bisogno, ma potrebbe aver bisogno di fare alcune voci di registro, memorizzare la configurazione utente del vostro particolare computer, creare alcune directory necessarie, o anche scaricare contenuti aggiuntivi online. Infatti, molte volte, il programma di installazione è la cosa che effettivamente esce e trova il binario di cui avete bisogno - guarda il vostro sistema e dice "Aha! Ho bisogno di questo particolare file binario per questo sistema informatico! Vado a prenderlo per te."

Infine, il codice sorgente è come la ricetta. Ti mostra tutte le istruzioni su come fare il cibo da solo. In questo modo, potete cucinarlo come meglio credete, nel caso abbiate delle esigenze molto speciali.

Il codice sorgente è di solito roba che qualcuno ha scritto a mano per far fare al vostro programma quello che dovrebbe fare. Usando strumenti come un compilatore, puoi trasformare il codice sorgente (che gli umani possono leggere) in un binario (che i computer possono leggere) -- e anche modificare un po' le cose a tuo piacimento. Di solito, alle aziende non piace mandarvi il loro codice sorgente--è la loro ricetta segreta che non vogliono dare via! Ma quando lo avete, potete farci quello che volete, compresi i miglioramenti (che alcune aziende e prodotti apprezzano molto!).