Razlika između izvornog programa i programa objekta

ključna razlika između izvornog programa i objektnog programa je to Izvorni program je ljudski čitljiv program koji je napisao programer dok je objektni program stroj izvedljiv program kreiran sastavljanjem izvornog programa.

Izvorni programi se mogu sastaviti ili protumačiti za izvršavanje. Dekompilatori pomažu pretvoriti objektne programe u originalne izvorne programe. Važno je napomenuti da se pojmovi izvorni program i objektni program koriste kao relativni pojmovi. Ako uzmete program preobrazbe programa (poput kompajlera), događa se izvorni program, a što izlazi je objektni program. Stoga objektni program proizveden jednim alatom može postati izvorna datoteka za drugi alat.

SADRŽAJ

1. Pregled i ključne razlike
2. Što je izvorni program
3. Što je objektni program
4. Usporedba - Usporedba programa - Program vs objekt u tabelarnom obliku
5. Sažetak

Što je izvorni program?

Programer piše izvorni program koristeći jezik više razine. Prema tome, čovjek je lako čitljiv. Izvorni programi obično sadrže smislena imena varijabli i korisne komentare kako bi bili čitljiviji. Stroj ne može izravno izvršiti izvorni program. Kompajler pomaže pretvoriti izvorni program u izvršni kod koji izvršava stroj. Alternativno je koristiti prevoditelja. On izvršava izvorni program, redak po red, bez prethodnog sastavljanja.

Slika 01: Izvorni program

Visual Basic je primjer sabranog jezika, dok je Java primjer interpretiranog jezika. Izvorne datoteke Visual Basic (.vb datoteke) sastavljaju se u .exe kodu, dok se Java izvorne datoteke (.java datoteke) prvo sastavljaju (pomoću naredbe javac) u bajt kod (objektni kod koji se nalazi u .class datotekama), a zatim se interpretiraju pomoću java tumač (pomoću naredbe java). Kad se distribuiraju softverske aplikacije, one obično neće sadržavati izvorne datoteke. Međutim, ako je aplikacija otvorenog koda, izvor se također distribuira i korisnik također može vidjeti i izmijeniti izvorni kod.

Što je objektni program?

Objektni program obično je izvršna datoteka na računalu, što je rezultat sastavljanja izvorne datoteke pomoću kompilatora. Osim strojnih uputa, mogu uključivati ​​podatke o uklanjanju pogrešaka, simbole, informacije o snopu, informacije o preseljenju i profiliranju. Budući da sadrže upute u strojnom kodu, ljudi ih ne mogu lako čitati. Ali ponekad se objektni programi odnose na intermedijarni objekt između izvornih i izvršnih datoteka.

Alati poznati kao veznici pomažu povezivanje skupa objekata u izvršnu datoteku (npr. C jezik). Kao što je gore spomenuto .exe datoteke i datoteke bajt kodova su datoteke predmeta koje nastaju kada se koriste Visual Basic i Java. Datoteke .exe izravno se izvršavaju na Windows platformi, dok datoteke bajt kodova trebaju prevoditelj za izvršenje.

Većina softverskih aplikacija distribuira se samo s objektnim ili izvršnim datotekama. Moguće je pretvoriti objekt ili izvršne datoteke u originalne datoteke dekompilacijom. Na primjer, alati za raspršivanje mogu dekompilirati datoteke java.class (bajt kod) u izvorne .java datoteke.

Koja je razlika između izvornog programa i programa objekta?

Izvorni program je ljudski čitljiv program koji je napisao programer. Napisan je na jezicima više razine kao što su Java ili C. Stoga je izvorni program čitljiv od strane ljudi. Mašina nije razumljiva.

S druge strane, objektni program je program koji se izvršava na računalu, stvoren nakon sastavljanja izvornog programa. Sadrži jezike niže razine kao što su sklop ili strojni kod. Stoga, objektni program nije čitljiv od strane čovjeka. Mašina je razumljiva.

Sažetak - Izvorni program prema objektnom programu

Razlika između izvornog i objektnog programa je što je izvorni program čitljiv od strane ljudi koji je napisao programer, dok je objektni program strojno izvršljiv program kreiran kompilacijom izvornog programa.

Referenca:

1. "Izvorni kod." Wikipedija, Zaklada Wikimedia, 17. svibnja 2018. Dostupno ovdje

2. "Predmetni kod." Wikipedija, Zaklada Wikimedia, 14. svibnja 2018. Dostupno ovdje 

Ljubaznošću slike:

1.'CodeCmmt002'By Dreftymac (CCBY 2.5) via Commons Wikimedia