Skriptovací jazyk

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Skriptovací jazyk je programovací jazyk navržený především k automatizaci úloh, k manipulaci s prostředky stávajícího systému, případně k jejich uzpůsobování potřebám zákazníka nebo uživatele.

Obecně přijímaná definice, jaké vlastnosti musí mít skriptovací jazyk, neexistuje; obvykle se za skriptovací jazyky považují programovací jazyky s následujícími vlastnostmi:

* Interpretovaný jazyk; základem jsou často příkazy, které může operátor zadávat ručně v interaktivním režimu. * Není třeba deklarovat proměnné. +more * Používá dynamickou typovou kontrolu - automaticky podle potřeby konvertuje data mezi řetězci, čísly, logickými hodnotami. * Automatické nastavení hodnot u nedefinovaných proměnných a konstant. * Zotavení z chyb, které neústí v ukončení skriptu. * Podporuje práci se složitějšími datovými typy jako jsou seznamy a asociativní pole, bez potřeby starat se o uvolňování paměti. * Obsahuje funkce pro zpracování textů a podporu regulárních výrazů.

K typickým zástupcům skriptovacích jazyků se počítají například Python, Lua, PHP, Perl, Tcl, Ruby, JavaScript a PL/SQL. Z toho nejméně poslední dva mohou být nejen interpretované, ale i kompilované (kromě JavaScriptu volitelně i uložené procedury např. +more Transact-SQL). Také unixový shell je možno považovat za skriptovací jazyk. Skriptovací jazyky se často využívají v prostředí webových aplikací.

Skripty

Program zapsaný ve skriptovacím jazyce se označuje jako skript. Typicky skript těží z výhody, že se nemusí překládat, a často tvoří rozšiřitelnou (parametrickou) část nějakého softwarového projektu, která se může měnit, aniž by bylo potřeba pokaždé rekompilovat hlavní spustitelný soubor. +more 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ě.

Některé programovací jazyky mají možnost kompilace do strojového kódu i interpretace; jiné umožňují i mezistupeň, předkompilování do vnitřního jazyka, 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. +more Hranice mezi takovými programy a skripty tedy není zcela ostrá.

Úroveň skriptů a jejich jazyků se může velice lišit. Některé skriptovací jazyky (např. +more Python nebo PHP) nabízejí 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.

Výhody

Není nutné mít nainstalovaný kompilátor a provádět po každé změně kódu kompilaci. * Snadnější údržba, vývoj a správa kódu. +more * Některé skripty umožňují interpretaci kódu z řetězce (funkce typicky pojmenovaná eval). Něco takového překládané programy z principu nedokáží.

Nevýhody

Nižší rychlost. Interpretace stojí určitý strojový čas a nikdy nebude tak rychlá jako spouštění přeloženého (a optimalizovaného) programu. +more * O trochu vyšší paměťová náročnost. Interpret 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. rukojetí procesů a kontextových zařízení apod). * Snadné zavlečení některých chyb a jejich obtížné odhalování (důsledek automatické inicializace a dynamického typování).

Reference

Externí odkazy

[url=https://web. archive. +moreorg/web/20160306205822/http://reboot. cz/howto/programovani/skriptovaci-programovaci-jazyky/articles. html. id=153]Skriptovací programovací jazyky[/url] (Jiří Václavovič) * [url=http://c2. com/cgi/wiki. ScriptingLanguage]Scripting Language wiki[/url] * [url=http://www. tcl. tk/doc/scripting. html]Scripting: Higher Level Programming for the 21st Century[/url] (John K. Ousterhout, IEEE Computer magazine, březen 1998).

Kategorie:Programování Kategorie:Paradigmata programování

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top