galvenā atšķirība starp avotu programmu un objektu programmu ir tā Avota programma ir cilvēkam lasāma programma, ko rakstījis programmētājs, savukārt objekta programma ir mašīna izpildāma programma, kas izveidota, sastādot avota programmu.
Avota programmas var sastādīt vai interpretēt izpildei. Dekompilatori palīdz pārveidot objektu programmas atpakaļ uz sākotnējām avota programmām. Ir svarīgi atzīmēt, ka termini avota programma un objektu programma tiek izmantoti kā relatīvie termini. Ja jūs lietojat programmas pārveidošanas programmu (piemēram, kompilatoru), tas, kas iet iekšā, ir avota programma, un kas iznāk, ir objekta programma. Tāpēc objekta programma, ko ražo viens rīks, var kļūt par avotu failu citam rīkam.
1. Pārskats un galvenās atšķirības
2. Kas ir avota programma?
3. Kas ir objekta programma?
4. Blakus salīdzinājums - avota programma pret objektu programmu tabulas formā
5. Kopsavilkums
Programmētājs raksta avota programmu, izmantojot augstāka līmeņa valodu. Tāpēc cilvēkiem tas ir viegli salasāms. Avota programmās parasti ir jēgpilni mainīgo nosaukumi un noderīgi komentāri, lai tie būtu lasāmāki. Mašīna nevar tieši izpildīt avota programmu. Kompilators palīdz pārveidot avota programmu izpildāmā kodā, lai to izpildītu mašīna. Alternatīva ir tulka izmantošana. Tas izpilda avota programmu rindā pa rindai bez iepriekšējas kompilācijas.
01. attēls. Avota programma
Visual Basic ir apkopotās valodas piemērs, savukārt Java ir interpretētās valodas piemērs. Visual Basic avota faili (.vb faili) tiek apkopoti .exe kodā, savukārt Java avota faili (.java faili) vispirms tiek apkopoti (izmantojot javac komandu), lai izveidotu baitu kodu (objekta kods, kas atrodas .class failos), un pēc tam tiek interpretēti, izmantojot java tulks (izmantojot java komandu). Kad programmatūras lietojumprogrammas tiek izplatītas, parasti tajās nav iekļauti avota faili. Tomēr, ja lietojumprogramma ir atvērts avots, tiek izplatīts arī avots, un lietotājs var redzēt un modificēt arī avota kodu.
Objektu programma parasti ir mašīna izpildāms fails, kas rodas, avota failu apkopojot, izmantojot kompilatoru. Papildus mašīnu instrukcijām tajos var ietilpt atkļūdošanas informācija, simboli, informācija par skursteni, pārvietošana un profilēšanas informācija. Tā kā tie satur instrukcijas mašīnkodā, cilvēkiem tie nav viegli lasāmi. Bet dažreiz objektu programmas attiecas uz starpposma objektu starp avota un izpildāmiem failiem.
Rīki, kas pazīstami kā saites, palīdz objektu kopu saistīt izpildāmā (piemēram, C valodā). Kā minēts iepriekš .exe faili un bytecode faili ir objektu faili, kas tiek ražoti, izmantojot attiecīgi Visual Basic un Java. .Exe failus tieši izpilda uz Windows platformas, savukārt baitkodu failiem izpildei ir nepieciešams tulks.
Lielākā daļa programmatūras lietojumprogrammu tiek izplatītas tikai ar objektu vai izpildāmiem failiem. Objektu vai izpildāmos failus ir iespējams konvertēt atpakaļ uz sākotnējiem avota failiem, veicot dekompilāciju. Piemēram, dekompilācijas rīki var dekompilēt java.class failus (bytecode) sākotnējos .java failos.
Avota programma ir cilvēkiem lasāma programma, ko rakstījis programmētājs. Tas ir uzrakstīts augstāka līmeņa valodās, piemēram, Java vai C. Tāpēc avota programma ir lasāma cilvēkiem. Mašīnai tas nav saprotams.
No otras puses, programma Object ir mašīnu izpildāma programma, kas izveidota pēc avota programmas apkopošanas. Tajā ir zemāka līmeņa valodas, piemēram, montāža vai mašīnas kods. Tāpēc objekta programma nav lasāma cilvēkam. Mašīnai tas ir saprotams.
Atšķirība starp avota programmu un objektu programmu ir tāda, ka avota programma ir cilvēkam lasāma programma, ko izstrādājis programmētājs, savukārt objekta programma ir mašīna izpildāma programma, kas izveidota, sastādot avota programmu.
1. “Pirmkods”. Wikipedia, Wikimedia Foundation, 2018. gada 17. maijs. Pieejams šeit
2. “Objekta kods”. Wikipedia, Wikimedia Foundation, 2018. gada 14. maijs. Pieejams šeit
1.'CodeCmmt002'By Dreftymac (CCBY 2.5), izmantojot Commons Wikimedia