Skriptovací jazyk: Porovnání verzí

Smazaný obsah Přidaný obsah
m {{Sloučit|Skript (program)}}
Řádek 1:
{{Sloučit|SkriptovacíSkript jazyk(program)}}
'''Skriptovací jazyk''' je [[počítač]]ový [[programovací jazyk]] který je [[interpreter|interpretován]]. Běžné programy je potřeba po jejich [[programování|naprogramování]] [[kompilátor|zkompilovat]] do podoby binární spustitelné aplikace (až tyto binární soubory je možné spustit). Naproti tomu pro spuštění programu ve skriptovacím jazyce je zapotřebí [[interpreter]], tj. aplikace, která tento skript vykonává přímo v jejich původní podobě [[zdrojový kód|zdrojového kódu]]. Interpreter prochází zdrojový kód a vykonává postupně příkaz za příkazem bez potřeby kompilace.
'''Skript''' je v [[Informatika|informatice]] [[zdrojový kód]] programu, který je tzv. [[Interpreter|interpretován]], tj. čten a spouštěn za běhu speciálním procesem, tzv. interpreterem.
 
Nevýhodou skriptovacích jazyků je, že jsou mnohem pomalejší ve srovnání s kompilovanými programovacími jazyky, které se spouští binárními spustitelnými soubory. Zdrojový kód skriptu je totiž třeba před každým spuštěním znovu zkontrolovat, zda neobsahuje syntaktické chyby, následně interpreter musí analyzovat každý příkaz ve zdrojovém kódu, aby ho mohl vykonat.
Jakožto programový kód, je i skript vytvořen v [[programovací jazyk|programovacím jazyku]] (hovoří se o tzv. [[skriptovací jazyk|skriptovacím jazyku]]), který má přesně stanoven svá pravidla, syntaktické elementy, jazykové [[konstrukt]]y atd.
 
Výhodou skriptů je snadnější údržba a vývoj. Skript je možné kdykoliv spustit bez nutnosti vždy znovu kompilovat. [[Programátor]]ovi v tomto případě stačí obyčejný [[textový editor]], nepotřebuje tedy žádný speciální kompilátor nebo vývojový nástroj.
Typicky se skript těží z výhody, že se nemusí překládat, a většinou tak tvoří rozšiřitelnou část nějakého softwarového projektu, která se může měnit, aniž by bylo potřeba pokaždé rekompilovat hlavní spustitelný soubor. Tak skripty najdeme u her, složitějších softwarových řešení nebo jako hlavní součást dynamických internetových stránek a podobně.
 
Skriptovací jazyky se často využívají i v prostředí [[webová aplikace|webových aplikací]].
Protikladem k interpretovanému kódu je program přeložený ([[kompilace|kompilovaný]]) do strojového kódu.
 
Příklady skriptovacích jazyků: [[Python]], [[PHP]], [[JavaScript]], [[Perl]], [[Tcl/Tk]] atd.
=== Výhody ===
* Není nutné mít nainstalovaný kompilátor a provádět po každé změně kódu [[kompilace|kompilaci]].
* Pohotovější úpravy programu.
* Některé skripty umožňují interpretaci kódu z řetězce (jako například funkce [http://cz.php.net/manual/en/function.eval.php <tt>eval()</tt>] v [[PHP]]). Něco takového překládané programy z principu nedokáží.
 
[[Kategorie:Programování]]
=== Nevýhody ===
* Rychlost. Interpretace stojí určitý strojový čas a nikdy nebude tak rychlá jako spouštění přeloženého programu.
* O trochu vyšší paměťová náročnost. Interpreter musí být spuštěn a tedy zabírá určitou operační paměť.
* Skriptovací jazyky mají většinou větší omezení než překládané programovací jazyky (např. co do přístupu do paměti, ovládání tzv. rukovětí procesů a kontextových zařízení apod).
 
{{softwarovýSoftwarový pahýl}}
=== Typické znaky skriptů ===
Návrh skriptovacího jazyka často zohledňuje rychlý vývoj programu a tak umožňují některé prvky, které v překládaných jazycích nenajdeme. Jedná se například o [[netypová proměnná|netypové proměnné]], ignorování některých dosud neznámých prvků; [[zpracování chyb]], které neústí v ukončení skiptu apod.
 
[[da:Script-sprog]]
=== Podoba skriptů ===
[[de:Skriptsprache]]
Některé [[programovací jazyk]]y mají možnost kompilace do strojového kódu i interpretace; jiné umožňují i mezistupeň, předkompilování do vnitřního jazyku, jehož vykonávání je rychlejší než klasická interpretace. Například, programy v jazyku [[QBasic]] splňují kritéria skriptů, ale obecně se považují za programy. Hranice mezi takovými programy a skripty tedy není zcela ostrá.
[[en:Scripting language]]
 
[[es:Lenguaje interpretado]]
Úroveň skriptů a jejich jazyků se také může velice lišit. Některé nejvyspělejší skriptovací jazyky (např. [[PHP]]) nabízejí finesy jako třeba [[objektově orientované programování]]. Na druhou stranu, jiné soubory, které obsahují toliko konfigurační parametry jiného programu, mohou být též označovány jako skripty. Většinou by ale skriptovací jazyk měl být alespoň na takové úrovni, aby dovoloval pracovat s proměnnými nebo umožňovat větvení programu.
[[fi:Komentosarjakieli]]
 
[[fr:Langage de script]]
{{softwarový pahýl}}
[[id:Bahasa skrip]]
[[it:Scripting]]
[[ja:スクリプト言語]]
[[nl:Scripttaal]]
[[no:Skriptspråk]]
[[pl:Język skryptowy]]
[[pt:Script]]
[[ru:Скриптовый язык]]
[[sk:Skriptovací jazyk]]
[[sv:Skriptspråk]]
[[zh:脚本语言]]