Rozdíl mezi zdrojovým programem a objektovým programem

Obsah:

Rozdíl mezi zdrojovým programem a objektovým programem
Rozdíl mezi zdrojovým programem a objektovým programem

Video: Rozdíl mezi zdrojovým programem a objektovým programem

Video: Rozdíl mezi zdrojovým programem a objektovým programem
Video: TOP 10 Počítačové lifehacky, které vám usnadní život 2024, Listopad
Anonim

Hlavní rozdíl mezi zdrojovým programem a objektovým programem je ten, že zdrojový program je pro člověka čitelný program napsaný programátorem, zatímco objektový program je strojově spustitelný program vytvořený kompilací zdrojového programu.

Zdrojové programy mohou být buď zkompilovány, nebo interpretovány pro spuštění. Dekompilátory pomáhají převést objektové programy zpět na původní zdrojové programy. Je důležité si uvědomit, že termíny zdrojový program a objektový program se používají jako relativní termíny. Pokud vezmete program transformace programu (jako kompilátor), to, co vstoupí, je zdrojový program a to, co vyjde, je objektový program. Objektový program vytvořený jedním nástrojem se tedy může stát zdrojovým souborem pro jiný nástroj.

Co je zdrojový program?

Programátor napíše zdrojový program pomocí jazyka vyšší úrovně. Proto je snadno čitelný pro lidi. Zdrojové programy obvykle obsahují smysluplné názvy proměnných a užitečné komentáře, aby byly čitelnější. Stroj nemůže přímo spustit zdrojový program. Kompilátor pomáhá transformovat zdrojový program na spustitelný kód, který má stroj spustit. Případně je použít tlumočníka. Spouští zdrojový program řádek po řádku bez předkompilace.

Rozdíl mezi zdrojovým programem a objektovým programem
Rozdíl mezi zdrojovým programem a objektovým programem
Rozdíl mezi zdrojovým programem a objektovým programem
Rozdíl mezi zdrojovým programem a objektovým programem

Obrázek 01: Zdrojový program

Visual Basic je příkladem kompilovaného jazyka, zatímco Java je příkladem interpretovaného jazyka. Zdrojové soubory Visual Basic (soubory.vb) jsou kompilovány do kódu.exe, zatímco zdrojové soubory Java (soubory.java) jsou nejprve kompilovány (pomocí příkazu javac) do bajtkódu (objektový kód obsažený v souborech.class) a poté interpretovány pomocí interpret java (pomocí příkazu java). Když jsou softwarové aplikace distribuovány, obvykle nebudou obsahovat zdrojové soubory. Pokud je však aplikace open source, zdroj je také distribuován a uživatel může také vidět a upravovat zdrojový kód.

Co je objektový program?

Objektový program je obvykle strojově spustitelný soubor, který je výsledkem kompilace zdrojového souboru pomocí kompilátoru. Kromě strojových instrukcí mohou obsahovat informace o ladění, symboly, informace o zásobníku, přemístění a informace o profilování. Protože obsahují instrukce ve strojovém kódu, nejsou snadno čitelné pro lidi. Někdy však objektové programy odkazují na přechodný objekt mezi zdrojovými a spustitelnými soubory.

Nástroje známé jako linkery pomáhají propojit sadu objektů do spustitelného souboru (např. jazyk C). Jak je uvedeno výše, soubory.exe a soubory bajtového kódu jsou objektové soubory vytvořené při použití jazyka Visual Basic a Java. Soubory.exe se spouštějí přímo na platformě Windows, zatímco soubory bajtového kódu potřebují ke spuštění interpret.

Většina softwarových aplikací je distribuována pouze s objektem nebo spustitelnými soubory. Je možné převést objekt nebo spustitelné soubory zpět na původní zdrojové soubory dekompilací. Například dekompilační nástroje mohou dekompilovat soubory java.class (bytecode) na původní soubory.java.

Jaký je rozdíl mezi zdrojovým programem a objektovým programem?

Zdrojový program je člověkem čitelný program napsaný programátorem. Je napsán v jazycích vyšší úrovně, jako je Java nebo C. Zdrojový program je proto čitelný pro člověka. Stroj to není srozumitelné.

Na druhou stranu, Object program je strojově spustitelný program vytvořený po kompilaci zdrojového programu. Obsahuje jazyky nižší úrovně, jako je assembler nebo strojový kód. Objektový program proto není čitelný pro člověka. Je to pro stroj srozumitelné.

Rozdíl mezi zdrojovým programem a objektovým programem v tabulkové formě
Rozdíl mezi zdrojovým programem a objektovým programem v tabulkové formě
Rozdíl mezi zdrojovým programem a objektovým programem v tabulkové formě
Rozdíl mezi zdrojovým programem a objektovým programem v tabulkové formě

Shrnutí – Zdrojový program vs. Objektový program

Rozdíl mezi zdrojovým programem a objektovým programem je ten, že zdrojový program je člověkem čitelný program napsaný programátorem, zatímco objektový program je strojově spustitelný program vytvořený kompilací zdrojového programu.

Doporučuje: