Skillnaden mellan källprogram och objektprogram

Innehållsförteckning:

Skillnaden mellan källprogram och objektprogram
Skillnaden mellan källprogram och objektprogram

Video: Skillnaden mellan källprogram och objektprogram

Video: Skillnaden mellan källprogram och objektprogram
Video: Open Source vs. Closed Source Software 2024, November
Anonim

Den viktigaste skillnaden mellan källprogram och objektprogram är att källprogram är ett mänskligt läsbart program skrivet av en programmerare medan objektprogram är ett maskinkörbart program skapat genom att kompilera ett källprogram.

Källprogram kan antingen kompileras eller tolkas för körning. Decompilers hjälper till att konvertera objektprogram tillbaka till sina ursprungliga källprogram. Det är viktigt att notera att termerna källprogram och objektprogram används som relativa termer. Om du tar ett programtransformationsprogram (som en kompilator) är det som går in ett källprogram och det som kommer ut är ett objektprogram. Därför kan ett objektprogram som produceras av ett verktyg bli en källfil för ett annat verktyg.

Vad är källprogram?

Programmeraren skriver källprogrammet med ett språk på högre nivå. Därför är det lätt att läsa av människor. Källprogram innehåller vanligtvis meningsfulla variabelnamn och användbara kommentarer för att göra det mer läsbart. En maskin kan inte direkt köra ett källprogram. En kompilator hjälper till att omvandla källprogram till körbar kod för att köras av maskinen. Alternativt är att använda tolk. Den kör ett källprogram rad för rad utan förkompilering.

Skillnaden mellan källprogram och objektprogram
Skillnaden mellan källprogram och objektprogram
Skillnaden mellan källprogram och objektprogram
Skillnaden mellan källprogram och objektprogram

Figur 01: Ett källprogram

Visual Basic är ett exempel på ett kompilerat språk, medan Java är ett exempel på ett tolkat språk. Visual Basic-källfiler (.vb-filer) kompileras till.exe-kod, medan Java-källfiler (.java-filer) först kompileras (med javac-kommandot) till bytekod (en objektkod som finns i.class-filer) och sedan tolkas med hjälp av java-tolk (med java-kommando). När mjukvaruapplikationer distribueras innehåller de vanligtvis inte källfiler. Men om applikationen är öppen källkod distribueras även källan och användaren får se och ändra källkoden också.

Vad är objektprogram?

Objektprogram är vanligtvis en maskinkörbar fil, som är resultatet av att kompilera en källfil med en kompilator. Förutom maskininstruktioner kan de inkludera felsökningsinformation, symboler, stackinformation, omlokalisering och profileringsinformation. Eftersom de innehåller instruktioner i maskinkod är de inte lättlästa för människor. Men ibland hänvisar objektprogram till ett mellanobjekt mellan källfiler och körbara filer.

Verktyg som kallas länkare hjälper till att länka en uppsättning objekt till en körbar fil (t.ex. C-språk). Som nämnts ovan är.exe-filer och bytecode-filer objektfiler som skapas när du använder Visual Basic respektive Java..exe-filerna körs direkt på Windows-plattformen medan bytekodfiler behöver en tolk för körning.

De flesta mjukvaruapplikationer distribueras endast med objektet eller körbara filer. Det är möjligt att konvertera objektet eller de körbara filerna tillbaka till dess ursprungliga källfiler genom dekompilering. Till exempel kan dekompileringsverktygen dekompilera java.class-filer(bytecode) till sina ursprungliga.java-filer.

Vad är skillnaden mellan källprogram och objektprogram?

Källprogram är ett läsbart program skrivet av en programmerare. Det är skrivet på högre nivåspråk som Java eller C. Därför är ett källprogram läsbart för människor. Det är inte förståeligt av maskinen.

Å andra sidan är Object-program ett maskinkörbart program skapat efter kompilering av ett källprogram. Den innehåller språk på lägre nivå som montering eller maskinkod. Därför är objektprogrammet inte läsbart av människan. Det är förståeligt av maskinen.

Skillnaden mellan källprogram och objektprogram i tabellform
Skillnaden mellan källprogram och objektprogram i tabellform
Skillnaden mellan källprogram och objektprogram i tabellform
Skillnaden mellan källprogram och objektprogram i tabellform

Sammanfattning – källprogram vs objektprogram

Skillnaden mellan källprogram och objektprogram är att källprogram är ett mänskligt läsbart program skrivet av en programmerare medan objektprogram är ett maskinkörbart program skapat genom att kompilera ett källprogram.

Rekommenderad: