Svantaggi e vantaggi di compilatori

November 26

Svantaggi e vantaggi di compilatori


I computer di leggere i comandi da un linguaggio macchina scritto in binario, vale a dire, lunghe stringhe di zero e uno. Mentre i computer in grado di leggere questo linguaggio in modo efficiente, la maggior parte dei programmatori umani non possono. È per questo che i programmatori lavorano in un linguaggio di programmazione che possano capire, che poi si traducono in linguaggio macchina che il computer può comprendere. Mentre molte lingue più recenti usano interpreti che traducono da uno all'altro come il programma viene eseguito, anziani linguaggi di programmazione compilatori che ha fatto questa traduzione del tutto prima che il computer eseguito il programma utilizzato.

Vantaggio: autonomo e efficiente

Uno dei principali vantaggi di programmi che vengono compilati è che sono unità autonome che sono pronti per essere eseguito. Perché sono già compilati in file binari in linguaggio macchina, non c'è seconda applicazione o il pacchetto che l'utente deve tenere up-to-date. Se un programma viene compilato per Windows su un'architettura x86, l'utente finale ha bisogno solo di un sistema operativo Windows in esecuzione su un architettura x86. Inoltre, un pacchetto precompilato può correre più veloce di un interprete compilazione del codice sorgente in tempo reale.

Svantaggio: hardware specifico

Perché un compilatore traduce il codice sorgente in un linguaggio macchina specifico, i programmi devono essere appositamente compilato per OS X, Windows o Linux, così come specificamente per i 32 bit o 64 bit architetture. Per una società di programmatore o software cercando di ottenere un prodotto fuori al più vasto pubblico possibile, questo significa mantenere più versioni del codice sorgente per la stessa applicazione. Ciò si traduce in più tempo speso per la manutenzione del codice sorgente e difficoltà in più quando gli aggiornamenti vengono rilasciati.

Vantaggio: ottimizzazione hardware

Pur essendo bloccato in un pacchetto di hardware specifico ha i suoi lati negativi, la compilazione di un programma può anche aumentare le prestazioni. Gli utenti possono inviare opzioni specifiche ai compilatori per quanto riguarda i dettagli dell'hardware del programma sarà in esecuzione. Questo consente al compilatore di creare il codice linguaggio macchina che rende l'uso più efficiente del hardware specificato, al contrario di codice più generico. Ciò consente anche agli utenti avanzati di ottimizzare le prestazioni di un programma sul proprio computer.

Svantaggio: i tempi di compilazione

Uno degli svantaggi di avere un compilatore è che deve effettivamente compilare il codice sorgente. Mentre i piccoli programmi che codificano molti programmatori alle prime armi assumono quantità insignificanti di tempo per compilare, suite di applicazioni più grandi possono prendere una notevole quantità di tempo per la compilazione. Quando i programmatori non hanno nulla a che fare, ma aspettare che il compilatore per finire, questa volta può aggiungere, soprattutto durante la fase di sviluppo, quando il codice deve essere compilato al fine di testare le funzionalità e risolvere i problemi glitch.