Skip to content

Rozdíl mezi kompilovanými a interpretovanými jazyky

25 de Červenec de 2021
GettyImages 1086740156 17f7d9dc62774742924704282aae30b2

Programovací jazyky se dělí do dvou různých rodin: sestaven a interpretován. Zkompilovaný jazyk je kódován člověkem, poté se tento zdrojový kód převede do jazyka sestavení, takže se cílový program spustí a vrátí požadovaný výsledek. Interpretovaný jazyk je však při spuštění kompilován v reálném čase a pro kódování často používá jednodušší a lidštější syntaxi. Výběr kompilovaného vs. interpretovaného jazyka by neměl být hlavním faktorem, když uvažujete o novém programovacím jazyce, který se chcete naučit.

Co je to kompilovaný jazyk?

Zvažte jednoduchý program, helloworld.c, napsané v programovacím jazyce C: #include
int main ()
{
printf („Hello World“);
}

C je příklad kompilovaného jazyka. Chcete-li spustit výše uvedený kód, musíte jej předat kompilátorem C – programem, který interpretuje váš kód tak, aby vytvořil binární program. Chcete-li zkompilovat jednoduchý program C v systému Linux, použijte gcc překladač: gcc helloworld.c -o ahoj

Výše uvedený příkaz změní kód z formátu čitelného na člověka do strojového kódu, který může počítač nativně spouštět. Zkompilovaný program se spustí spuštěním názvu zkompilovaného programu z prostředí shell: ./hello

Silné a slabé stránky

Výhody použití kompilátoru ke kompilaci kódu spočívají v tom, že konečný produkt obecně běží rychleji než interpretovaný kód, protože jej není třeba kompilovat za běhu, když je aplikace spuštěná. Zkompilovaný program byl zkontrolován na chyby během kompilace. Pokud existují nějaké příkazy, které se kompilátoru nelíbí, budou ohlášeny. Tato kontrola chyb vám pomůže opravit všechny chyby kódování, než získáte dobře fungující finální produkt. Jen proto, že se program úspěšně zkompiloval, neznamená, že bude fungovat tak, jak očekáváte, takže je stále nutné aplikaci otestovat. Program C zkompilovaný na počítači se systémem Linux však nebude možné spustit na počítači se systémem Windows, protože kompilátor obsahuje nástroje potřebné ke spuštění aplikace na konkrétní platformě – obvykle platformě, na které byla kompilována. Chcete-li, aby se stejný program C spouštěl v počítači se systémem Windows, musíte program znovu zkompilovat pomocí kompilátoru C v počítači se systémem Windows.

Co je tlumočený jazyk?

Hello World v Pythonu

Python je populární interpretovaný jazyk. print („ahoj svět“)

Výše uvedený kód je program v pythonu, který bude zobrazovat slova Ahoj světe když je spuštěn. Ke spuštění kódu nepotřebujeme nejprve kompilovat. Místo toho můžeme jednoduše spustit následující příkaz: python helloworld.py

Případně jej jednoduše zadejte z interaktivního tlumočníka Pythonu. Tento malý jednořádkový program není třeba nejprve kompilovat, ale vyžaduje, aby byl Python nainstalován na libovolném počítači, na kterém je spuštěn skript. Interpret Pythonu vezme lidsky čitelný kód a promění ho v něco jiného, ​​než z něj udělá něco, co může stroj číst. To vše se děje v zákulisí a jako uživatel vidíte jen slova Ahoj světe vytištěno na standardní výstup.

Silné a slabé stránky

Obecně platí, že interpretovaný kód běží pomaleji než kompilovaný kód, protože tlumočník překládá program on-the-fly do něčeho, co stroj zvládne. I když se tento zásah do efektivity může zdát jako nevýhoda, interpretované jazyky jsou užitečné z několika důvodů. Nejprve je mnohem snazší získat program napsaný v Pythonu pro spuštění v Linuxu, Windows a macOS. Vše, co musíte udělat, je ujistit se, že je Python nainstalován v počítači, na kterém chcete spustit skript. Další výhodou je, že kód je vždy k dispozici ke čtení a lze jej snadno změnit tak, aby fungoval tak, jak chcete. S kompilovaným kódem musíte zjistit, kde je kód uložen, změnit jej, zkompilovat a znovu nasadit program. S interpretovaným kódem však program otevřete, změníte a je připraven jít.