5. lekce - Překladače a překládání programu

14. 10. 2013 00:00

Program - algoritmus zapsaný v programovacím jazyce. Jak vypadá? Jen 1 a 0. Tomuto jazyku se říká strojový a nebo, pod známějším pojmem, binární kód počítače.

Program zapsaný v programovacím jazyku, jako je např. Pascal, je posloupnost textových řádků, které jsou tvořeny přípustnými symboly -> z těchto symbolů vznikají slova. U programování rozlišujeme 2 problémy kódu

  • Syntax - zabývá se skladbou a psaním kódu, jeho správnosti a chybami
  • Sémantika - zabývá se významem kódu, průběhem programu a výsledky algoritmu

Jak vypadá vývoj programu? Nejprve se vytvoří soubor, kterému se říká zdrojový text programu, který má charakteristickou příponu, která určuje jazyk (.PAS - Pascal, .CS - C#, ...). Kód máme a teď ho musíme přeložit. K tomu používáme překladač, který má obvykle vývojářský program v sobě zabudovaný (Visual studio, Free Pascal, Borland, ...). Po přeložení vzniká soubor .EXE. Toto je náš hotový program, který můžeme odzkoušet.

Odkazy na překladače (nejznámější):

Překladač nemáme jeden (co se týče stylu překládání). Máme 2 základní typy.

  • Kompilátor - přeloží celý zdrojový text programu do jazyka strojového (binárního). Poté nastává spuštění programu, který je v této fázi neměnný. Výhodou je, že program nemá vysoké nároky na RAM a procesor. Program nepotřebuje na klientském (koncovém) PC překladač. Nevýhodou je neměnnost kódu za běhu programu. V případě větších projektů je proto tento typ nevhodný, protože kompilování obrovských projektů je velmi zdlouhavé. Jazyky:
    • Fortran, Cobol, Algol, Pascal, Delphi (nástupce Pascal), PL1, Ada
    • C, C++
  • Interpret - pracuje na principu přeložení části programu (zdrojového kódu) a tím může být program rychleji spuštěn. V případě chyby je možno program pozastavit a opravit poškozené nebo špatně vytvořené místo. Poté je tato část přeložena a program funguje dál. Samozřejmě je tato výhoda zaplacena většími nároky na RAM i na CPU (procesor). Na klientském počítači musí být také nainstalován překladač. Jazyky:
    • Basic, LISP, Smalltalk, Scheme
    • Perl, Python
    • Rodina Shell jazyků -> Bash, Ash, ...
  • Jak jste si možná všimly, chybí zde mnou provozovaný C# a jeden z  nejznámějších jazyků Java. Tyto jazyky jsou něco mezi těma 2 typy. Vysvětlení těchto jazyků je složité a proto nebudu dále vysvětlovat.

Volba překladače při dalším programování je tedy jenom na Vás. Osobně používám C# a jsem s ním velmi spokojen, ale spolužák programuje v Java a také si ho nemůže vynachválit. Je to tedy jenom otázka vlastního názoru na programovací jazyky.

Příště si ukážeme základní formát programu (i s vysvětlením) a začneme malými krůčky programovat. 

<-- Předchozí lekce - 4. lekce - Algoritmické konstruktory Další lekce - 6. lekce - Formát programu (Pascal) -->

Pokud máte otázky, pište na naši adresu, Facebook nebo na Twitter.

Štítky:
Programování, Základy programování