Ero lähdeohjelman ja kohdeohjelman välillä

avainero lähdeohjelman ja kohdeohjelman välillä on se Lähdeohjelma on ihmisille luettava ohjelma, jonka on kirjoittanut ohjelmoija, kun taas kohdeohjelma on koneella suoritettava ohjelma, joka on luotu kokoamalla lähdeohjelma.

Lähdeohjelmat voidaan joko kääntää tai tulkita suorittamista varten. Dekompilerit auttavat muuntamaan objektiohjelmat takaisin alkuperäisiin ohjelmiin. On tärkeää huomata, että termejä lähdeohjelma ja objektiohjelma käytetään suhteellisina termeinä. Jos otat ohjelman muuntamisohjelman (kuten kääntäjä), mikä menee sisään, on lähdeohjelma ja mikä tulee esiin, on objektiohjelma. Siksi yhden työkalun tuottamasta objektiohjelmasta voi tulla lähdetiedosto toiselle työkalulle.

SISÄLLYS

1. Yleiskatsaus ja keskeiset erot
2. Mikä on lähdeohjelma?
3. Mikä on objektiohjelma
4. Vertailu rinnakkain - lähdeohjelma vs objektiohjelma taulukkomuodossa
5. Yhteenveto

Mikä on lähdeohjelma?

Ohjelmoija kirjoittaa lähdeohjelman käyttämällä korkeamman tason kieltä. Siksi se on helposti luettavissa ihmisille. Lähdeohjelmat sisältävät yleensä merkityksellisiä muuttujien nimiä ja hyödyllisiä kommentteja sen luettavuuden parantamiseksi. Kone ei voi suoraan suorittaa lähdeohjelmaa. Kääntäjä auttaa muuntamaan lähdeohjelman suoritettavaksi koodiksi koneen suorittamaksi. Vaihtoehtoisesti on käyttää tulkkia. Se suorittaa lähdekoodiohjelman rivi riviltä ilman ennakkokompilointia.

Kuva 01: Lähdeohjelma

Visual Basic on esimerkki käännetystä kielestä, kun taas Java on esimerkki tulkitusta kielestä. Visual Basic-lähdetiedostot (.vb-tiedostot) käännetään .exe-koodiksi, kun taas Java-lähdetiedostot (.java-tiedostot) kootaan ensin (javac-komennolla) tavukoodiksi (.class-tiedostoihin sisältyvä objektikoodi) ja tulkitaan sitten java-tulkki (java-komennolla). Kun ohjelmistosovelluksia levitetään, ne eivät yleensä sisällä lähdetiedostoja. Jos sovellus on avoin lähdekoodi, myös lähde jaetaan ja käyttäjä saa nähdä ja muokata myös lähdekoodia.

Mikä on objektiohjelma?

Objektiohjelma on yleensä koneella suoritettava tiedosto, joka syntyy lähdetiedoston kääntämisestä kääntäjällä. Koneohjeiden lisäksi ne voivat sisältää virheenkorjaustietoja, symboleja, pinotietoja, siirtämistä ja profilointitietoja. Koska ne sisältävät ohjeita konekoodissa, ihmiset eivät ole helposti luettavissa niistä. Mutta joskus objektiohjelmat viittaavat väliobjektiin lähde- ja suoritettavien tiedostojen välillä.

Liittäjinä tunnetut työkalut auttavat linkittämään joukon esineitä suoritettavaan (esim. C-kieli). Kuten edellä mainittiin .exe-tiedostot ja tavukooditiedostot ovat objektitiedostoja, jotka tuotetaan käytettäessä Visual Basiciä ja Javaa vastaavasti. .Exe-tiedostot suoritetaan suoraan Windows-alustalla, kun taas tavukooditiedostot tarvitsevat tulkin suorittamiseksi.

Suurin osa ohjelmistosovelluksista jaetaan vain objekti- tai suoritettavien tiedostojen kanssa. Objekti tai suoritettavat tiedostot on mahdollista muuntaa takaisin alkuperäisiin lähdetiedostoihin dekompilaatiolla. Esimerkiksi purkaustyökalut voivat purkaa java.class-tiedostot (tavukoodi) alkuperäisiin .java-tiedostoihinsa.

Mikä on ero lähdeohjelman ja kohdeohjelman välillä??

Lähdeohjelma on ihmisille luettava ohjelma, jonka on kirjoittanut ohjelmoija. Se on kirjoitettu ylemmillä kielillä, kuten Java tai C. Siksi lähdeohjelma on ihmisen luettavissa. Se ei ole koneelle ymmärrettävää.

Toisaalta Object-ohjelma on koneohjelma, joka luodaan lähdeohjelman kääntämisen jälkeen. Se sisältää alemman tason kieliä, kuten kokoonpano- tai konekoodit. Siksi objektiohjelma ei ole luettavissa ihmiselle. Se on koneelle ymmärrettävää.

Yhteenveto - Lähdeohjelma vs. Objektiohjelma

Ero lähdeohjelman ja objektiohjelman välillä on, että lähdeohjelma on ohjelmoijan kirjoittama ihmisille luettava ohjelma, kun taas kohdeohjelma on koneohjelma, joka on luotu kääntämällä lähdeohjelma.

Viite:

1. ”Lähdekoodi.” wikipedia, Wikimedia-säätiö, 17. toukokuuta 2018. Saatavilla täältä

2. ”Objektikoodi.” wikipedia, Wikimedia-säätiö, 14. toukokuuta 2018. Saatavilla täältä 

Kuvan kohteliaisuus:

1.'CodeCmmt002'By Dreftymac (CCBY 2.5) Commons Wikimedian kautta