Što je objektni kod?

Programski jezici kao što su C i Java jezici su visoke razine koji zahtijevaju prevođenje izvornog koda koji je programer unio. Nakon što prevodilac obradi kod, proizvodi skup objektnog koda koji se može proslijediti drugim programima ili pokrenuti na računalnom sustavu.

Prilikom izrade izvornog koda u objektno orijentiranom jeziku kao što je C++, programer može koristiti instance objekata kako bi izvorni kod lakše pratio. Nakon što je kod sastavljen, rezultirajući objektni kod će čovjeku biti teško pročitati, ali ga računalo može vrlo učinkovito obraditi. Dvije vrste objekata su prilično različite, ali za njihovu upotrebu – jedan čitaju programeri, drugi čitaju računala – služe sličnoj svrsi.

Objektni kod također može zaštititi izvorni kod određene aplikacije i ukloniti zahtjev za uključivanjem izvora uz kupljeni proizvod. Jedan primjer objektnog koda koji potrošači plaćaju bio bi Microsoft Office. Objektni kod je zapisan na CD ili DVD i zapakiran za prodaju, ali izvorni kod koji se koristi za kompiliranje aplikacija u njihovo radno stanje čuva Microsoft i ne dijeli ga široj javnosti. To pomaže zaštiti intelektualnog vlasništva za Microsoft i također eliminira potrebu da pojedinac kupi softver kako bi ga kompajlirao prije instalacije.

Prevoditelj je dio softvera koji pretvara uneseni izvorni kod u strojni jezik čitljiv objekt koji je optimiziran za čitanje na računalu. Odvajanje izvornog izvornog koda od instaliranog koda također može pružiti prednost razvojnim programerima u testiranju, dopuštajući da se izvorni kod kontinuirano mijenja i prevodi kako bi bio dostupan za kasnije instalacije. Primjer ovoga može biti usporedba noćne izrade aplikacije sa stabilnim pakiranim objektnim kodom. Jedan je potrebno kompajlirati i mijenja se svake noći, drugi je testiran i dostupan je kada se većina kinkova razradi.

Neke aplikacije ili čak operacijske sustave kao što je Linux korisnici mogu kompajlirati nakon preuzimanja ili ih mogu preuzeti i instalirati iz unaprijed kompajliranog objektnog koda. Mnoge od ovih aplikacija su otvorenog koda, a razvojne zajednice koje ih stvaraju i podržavaju potiču one koji ih koriste da pomognu u izmjeni njihovog izvornog koda.
Sve je više aplikacija otvorenog koda i programera diljem Interneta koji bi potaknuli korištenje noćnih build-ova, no pakirani objektni kod i open source i payware aplikacija može biti mnogo lakši za korisnika.