Предимства и недостатъци на съставителите

Програмистите използват компилатори за преобразуване на изходния код в машинен код.

Предимство: автономна и ефективна

Голямо предимство на събраните програми е, че те са автономни единици, готови да бъдат изпълнени. Тъй като те вече са компилирани в двоични машинни езикови файлове, второ приложение или пакет, който потребителят трябва да поддържа актуализиран, не е необходимо. Ако една програма се компилира за Windows в архитектура x86, крайният потребител се нуждае само от операционна система Windows, изпълняваща архитектура x86. Освен това, предварително компилираният пакет може да работи по-бързо от изходния код на преводача на компилатора в реално време.

Недостатък: специфичен за хардуера

Тъй като компилаторът превежда изходния код на специфичен език на машината, програмите трябва да бъдат компилирани специално за OS X, Windows или Linux, както и за 32 или 64 битови архитектури. За програмист или софтуерна компания, която се опитва да накара даден продукт да достигне възможно най-широка аудитория, това означава, че трябва да има няколко версии на изходния код за едно и също приложение, което води до по-голямо време, прекарано в продукта. поддръжката на изходния код и допълнителни проблеми при пускането на актуализациите.

Предимство: хардуерна оптимизация

Макар да е ограничено до конкретен хардуерен пакет, има своите недостатъци, компилирането на програма може също да увеличи производителността на последния. Потребителите могат да изпращат конкретни опции до компилаторите, свързани с подробностите за хардуера, на който ще се изпълнява програмата. Това позволява на компилатора да генерира код на машинен език, който прави по-ефективно използване на определения хардуер, за разлика от по-общия код. Това също така позволява на напредналите потребители да оптимизират ефективността на програмата на своите компютри.

Недостатък: време за компилиране

Един от недостатъците на компилатора е, че трябва наистина да компилирате изходния код. Докато малките програми, които много кодиращи разработчици на новак изискват тривиални количества време, за да бъдат съставени, големите приложения за приложения могат да отделят значителни количества време за компилиране. Когато програмистите нямат нищо друго освен да чакат компилаторът да приключи, този път процесът може да стане по-бавен, особено по време на етапа на разработка, когато кодът трябва да бъде компилиран, за да тества функционалността му и да разреши грешките.