Най- ключова разлика между Източна програма и Обектна програма е това Изходната програма е четена от човека програма, написана от програмист, докато обектната програма е изпълнима машина програма, създадена чрез компилиране на изходна програма.
Изходните програми могат да бъдат компилирани или интерпретирани за изпълнение. Decompilers помага да конвертирате обектни програми обратно в оригиналните им програми. Важно е да се отбележи, че термините източник програма и обектна програма се използват като относителни термини. Ако вземете програма за трансформация на програма (като компилатор), това, което влиза, е изходна програма и това, което излиза, е обектна програма. Следователно обектна програма, произведена от един инструмент, може да се превърне в изходен файл за друг инструмент.
1. Преглед и ключова разлика
2. Какво е източник на програма
3. Какво е обектна програма
4. Паралелно сравнение - Източна програма спрямо обектна програма в таблична форма
5. Обобщение
Програмистът записва изходната програма, използвайки език от по-високо ниво. Следователно, той е лесно четим от хората. Изходните програми обикновено съдържат смислени имена на променливи и полезни коментари, за да бъдат по-четими. Машината не може директно да изпълни програма за източник. Компилаторът помага да се трансформира изходната програма в изпълним код, който да се изпълнява от машината. Друга възможност е да използвате преводач. Той изпълнява изходна програма по ред без предварителна компилация.
Фигура 01: Източна програма
Visual Basic е пример за компилиран език, докато Java е пример за интерпретиран език. Изходните файлове на Visual Basic (.vb файлове) се компилират в .exe код, докато изходните файлове на Java (.java файлове) първо се компилират (с помощта на команда javac) до байт код (обектов код, съдържащ се в .class файлове) и след това се интерпретират с помощта на java преводач (използващ команда java). Когато се разпространяват софтуерни приложения, обикновено те не включват изходни файлове. Ако обаче приложението е с отворен код, източникът също се разпространява и потребителят също така вижда и променя изходния код.
Обектната програма обикновено е изпълним от машина файл, който е резултат от компилиране на изходен файл с помощта на компилатор. Освен инструкции за машината, те могат да включват информация за отстраняване на грешки, символи, информация за стека, преместване и информация за профилиране. Тъй като съдържат инструкции в машинен код, те не са лесно четими от хората. Но понякога обектните програми се отнасят до междинен обект между източник и изпълними файлове.
Инструменти, известни като линкъри, помага да се свърже набор от обекти в изпълним файл (например език C). Както бе споменато по-горе .exe файловете и байтовите файлове са обектни файлове, създадени при използване съответно на Visual Basic и Java. Файловете .exe се изпълняват директно на платформата на Windows, докато файловете с байткод се нуждаят от интерпретатор за изпълнение.
Повечето софтуерни приложения се разпространяват само с обекта или изпълними файлове. Възможно е да конвертирате обекта или изпълними файлове обратно в оригиналните му изходни файлове чрез декомпилация. Например, инструментите за декомпилиране могат да декомпилират файлове java.class (байт код) в оригиналните им .java файлове.
Източната програма е четена от човека програма, написана от програмист. Написана е на езици от по-високо ниво като Java или C. Следователно, изходната програма е четена от човека. Това не е разбираемо от машината.
От друга страна, обектната програма е машинно изпълнима програма, създадена след компилиране на изходна програма. Той съдържа езици от по-ниско ниво като монтажен или машинен код. Следователно обектната програма не е четена от човека. Това е разбираемо от машината.
Разликата между Източна програма и Обектна програма е, че Източната програма е четена от човека програма, написана от програмист, докато обектната програма е машина, изпълнявана от програмата, създадена чрез компилиране на изходна програма.
1. „Изходен код.“ Wikipedia, Фондация Wikimedia, 17 май 2018 г. Достъпно тук
2. „Код на обекта.“ Wikipedia, Фондация Wikimedia, 14 май 2018 г. Достъпно тук
1.'CodeCmmt002'By Dreftymac (CCBY 2.5) през Wikimedia на Commons