Quali sono i diversi tipi di codice sorgente?
Ogni linguaggio di programmazione e markup ha la sua forma particolare di codice sorgente, a volte indicato semplicemente come "sorgente". Questo codice consiste in una descrizione delle attività che un computer deve eseguire ed è scritto e archiviato in un formato di testo che un essere umano può facilmente leggere. Alcuni codici vengono compilati prima dell'uso, un processo che trasforma l'origine in un set di istruzioni in linguaggio macchina. Il testo in un linguaggio di markup come HTML non è tecnicamente codice sorgente nel vero senso del termine, ma viene spesso indicato come tale. Esistono anche diverse categorie legali di codice sorgente con la divisione più importante tra open e closed-source.
Ogni linguaggio di programmazione utilizza una sintassi diversa per rappresentare un algoritmo sottostante. Queste differenze indicano che il codice sorgente varia da lingua a lingua. Alcuni linguaggi, come C e C ++, sono correlati e condividono determinati elementi di stile e sintassi.
Alcune convenzioni di stile di programmazione si verificano nella maggior parte dei linguaggi. Ad esempio, quasi tutte le lingue includono un sistema per indicare commenti o parti del codice destinate agli utenti umani anziché all'elaborazione da parte di un compilatore. Questa è una caratteristica così comune del codice sorgente che diversi stili di notazione di commento appaiono in più di un linguaggio di programmazione.
Tutto il vero codice sorgente deve essere eseguito attraverso un compilatore e trasformato in linguaggio macchina prima che possa essere eseguito da un computer. In alcuni casi, come Python in modalità interattiva, questa attività viene eseguita in modo dinamico. In altri casi, il compilatore produce un file eseguibile che memorizza le istruzioni in linguaggio macchina per un uso successivo.
Il testo sottoposto a markup che costituisce gran parte del contenuto del Web non è tecnicamente codice sorgente. Esiste una certa somiglianza, tuttavia, poiché HTML e altri linguaggi di markup correlati trasmettono significato e descrivono le attività che devono essere eseguite da un computer, in particolare i modi in cui il testo e altre informazioni devono essere formattate e visualizzate. Pertanto, il testo che è stato marcato in HTML viene spesso definito codice sorgente.
Legalmente parlando, ci sono due modelli per la proprietà e la distribuzione della fonte. Il software open source è un software il cui codice viene fornito, a volte senza stringhe allegate e talvolta con un contratto di licenza open source che conserva alcuni diritti di base per l'autore. Alcuni di questi accordi limitano il tipo di modifiche che possono essere eseguite sul codice sorgente, ma alcuni prevedono semplicemente che il credito debba essere concesso all'autore originale.
L'origine chiusa è l'altra grande varietà legale di codice sorgente. In questo modello, solo un file eseguibile viene fornito a un titolare della licenza. Agli utenti è vietato tentare di decompilare i file eseguibili per rivelare il codice sottostante. Questo modello legale domina il campo del software commerciale, anche se alcuni modelli di business open source si sono dimostrati fattibili.