Skriptovací jazyk

Skriptovací alebo skriptovací jazyk je programovací jazyk, ktorý podporuje skripty. Skripty sú zvyčajne krátke počítačové programy, ktoré vykonávajú kroky, ktoré by mohol vykonať človek po jednom. Týmto spôsobom sa práca automatizuje, aby bola jednoduchšia a spoľahlivejšia. Skriptovací jazyk je často jednoduchší jazyk a ľahšie sa učí ako iné jazyky, ale napriek tomu dokáže robiť veľa vecí.

Skripty sa môžu spúšťať v inom programe, napríklad vo webovom prehliadači alebo v programe Microsoft Excel. Môžu byť aj príkazovým riadkom, ktorý sa spúšťa z rozhrania príkazového riadku a uskutočňuje volania operačného systému (OS). Shell sa považuje za interaktívny - používateľ si môže vybrať, čo má napísať, a shell na príkaz reaguje. Môžu sa používať na riadenie úloh na mainframoch a serveroch.

Niektorí ľudia tvrdia, že skriptovací jazyk musí byť viazaný na konkrétne použitie. Iní používajú širšiu definíciu a zahŕňajú všeobecné programovacie jazyky, ktoré sú interpretované, nie kompilované. Všeobecný jazyk znamená, že sa dá použiť mnohými spôsobmi na rôzne veci. Niektoré univerzálne jazyky (napríklad Java) majú varianty, ktoré možno skriptovať (Javascript). Neexistuje žiadne konkrétne pravidlo o tom, čo je alebo nie je skriptovací jazyk.

Príklady

Niektoré bežné príklady skriptovacích jazykov:

  • Bash a C shell ako ovládacie jazyky pre operačné systémy Unix alebo Unixu podobné
  • Skripty, ktoré sa spúšťajú v iných aplikáciách, sa nazývajú rozširujúci jazyk. Webové prehliadače umožňujú niekoľko druhov skriptov vrátane ECMAScriptu (JavaScript) alebo XUL. Napríklad domovská stránka Google používa JavaScript. Visual Basic for Applications sa používa vo vnútri balíka Microsoft Office. Lua je jazyk zámerne vytvorený ako jazyk rozšírenia a možno ho používať v rámci mnohých aplikácií.
  • Medzi hry, ktoré majú skriptovacie rozšírenia, patria virtuálny svet Second Life a železničné simulátory Trainz. V iných hrách, ako je Wesnoth, sú rozmanitosťou skutočných hier skripty napísané inými používateľmi.
  • Jazyky na spracovanie textu sed a AWK
  • Všeobecné použitie: Perl, Tcl a Python sú vysokoúrovňové programovacie jazyky (bližšie k ľudskému jazyku ako k strojovému kódu), ktoré sa dajú použiť na mnoho rôznych vecí. Niektoré z týchto jazykov boli najprv vytvorené na konkrétne použitie a potom sa zmenili na jazyky na všeobecné použitie.

Charakteristika

Väčšina skriptovacích jazykov je vytvorená tak, aby sa dala ľahko naučiť. Často môžu byť buď krátkymi súbormi so zdrojovým kódom, alebo sa zadávajú po jednom príkaze v rozhraní príkazového riadku, ktoré má cyklus čítanie-vyhodnotenie-tlač (REPL, language shell). To zvyčajne znamená jednoduchý súbor príkazov. Nemusí obsahovať funkcie ani main, jednoducho sa spustí od začiatku do konca. Ak niečo nefunguje, programátor môže urobiť rýchle zmeny a spustiť to znova. Vďaka tomu je skriptovací jazyk vhodný na vytvorenie rýchleho prototypu, aby sa zistilo, či nápad funguje.

Väčšina ľudí napríklad nenazýva Javu skriptovacím jazykom, pretože má zdĺhavú syntax a pravidlá o tom, ktoré triedy existujú v ktorých súboroch, a pretože Javu nemožno spúšťať interaktívne v REPL. Potrebuje súbory so zdrojovým kódom a tie môžu obsahovať len definície, ktoré musí použiť hostiteľská aplikácia alebo spúšťač aplikácie. (Java nie je to isté ako JavaScript).

Python však umožňuje výber - funkcie možno umiestniť do súboru, možno ho spustiť bez funkcií a použiť imperatívny štýl programovania, alebo ho dokonca používať interaktívne (písať a spúšťať po jednom riadku).

print ("Hello World")

Tento jeden riadok kódu Pythonu vypíše "Hello World"; nie je potrebná funkcia main() ani nič iné.

Skriptovací jazyk sa zvyčajne interpretuje zo zdrojového kódu alebo bajtkódu. Niečo však musí skript spustiť (interpretovať), aby mu počítač rozumel. Je to aplikácia alebo niečo v operačnom systéme. Tá je často napísaná v kompilovanom jazyku a distribuovaná vo forme strojového kódu (ako spustiteľný súbor, ktorý nedáva človeku zmysel).

Skriptovacie jazyky môžu byť navrhnuté tak, aby ich používali ľudia, ktorí program používajú - vývoj pre koncového používateľa. Inokedy ich môžu vytvárať programátori na vlastné použitie. Skriptovacie jazyky často používajú abstrakciu, čo je forma skrývania informácií. To znamená, že používatelia nemusia poznať podrobnosti o typoch premenných, ukladaní údajov a správe pamäte.

Skripty často vytvára alebo mení osoba, ktorá ich vykonáva, ale niektoré sa zdieľajú alebo predávajú iným. Napríklad, keď sú veľké časti hier napísané v skriptovacom jazyku. Niekedy sa skript môže skompilovať skôr, ako ho začnú používať iní. Po skompilovaní sa spustí rýchlejšie a nepotrebuje na spustenie inú aplikáciu. A to zabraňuje koncovým používateľom meniť kód.

História

Prvé počítače mainframe (v 50. rokoch 20. storočia) neboli interaktívne, ale používali skripty uložené v dávkových súboroch. Jazyk IBM Job Control Language (JCL) je bežným príkladom skriptovacieho jazyka používaného na riadenie dávkového spracovania.

Prvé interaktívne škrupiny boli vytvorené v 60. rokoch 20. storočia na pomoc pri vzdialenej prevádzke prvých systémov zdieľania času. Používali sa v nich shell skripty, ktoré dokážu spúšťať počítačové programy v rámci počítačového programu, shellu. Calvinovi Mooersovi sa v jeho jazyku TRAC všeobecne pripisujú zásluhy za vynájdenie nahrádzania príkazov. Tá umožňuje príkazom meniť skript (samomodifikujúci sa kód). Multics tieto funkcie nazýva aktívne funkcie. Louis Pouzin napísal okolo roku 1964 pre CTSS skorý procesor pre príkazové skripty s názvom RUNCOM. Stuart Madnick z MIT napísal v roku 1966 skriptovací jazyk pre IBM CP/CMS. Pôvodne tento procesor nazval COMMAND, neskôr ho pomenoval EXEC. Multics obsahoval odnož CTSS RUNCOM, ktorá sa tiež nazývala RUNCOM. EXEC bol nakoniec nahradený EXEC 2 a REXX.

Jazyky ako Tcl a Lua boli od začiatku vytvorené ako všeobecné skriptovacie jazyky, ktoré sa dajú použiť v akejkoľvek aplikácii. Iné jazyky, ako napríklad Visual Basic for Applications (VBA), mohli robiť veľa podobného, ale museli pracovať len s určitými aplikáciami. Používanie všeobecného skriptovacieho jazyka namiesto vytvárania nového jazyka pre každú aplikáciu zvyčajne uľahčuje prácu osobe, ktorá píše aplikáciu, aj používateľovi, ktorý píše skripty.

Typy skriptovacích jazykov

Jazyky lepidla

Skriptovanie sa niekedy používa na prepojenie rôznych aplikácií. Nazýva sa to "lepiaci kód" a jazyk vytvorený práve na tento účel je lepiaci jazyk. Bežnými príkladmi spojovacích jazykov sú pipelines a shell skripty. Ak je však v skriptovacom súbore napísané veľa logiky, je lepšie ho považovať jednoducho za ďalšiu softvérovú aplikáciu, nie za "lepidlo".

Lepiace jazyky sú užitočné najmä pri písaní a údržbe:

  • vlastné príkazy pre príkazový riadok;
  • menšie programy ako tie, ktoré sú lepšie implementované v kompilovanom jazyku;
  • "obalové" programy, ktoré vykonávajú niektoré automatizované činnosti pred alebo po spustení aplikácie, ako je tabuľkový procesor, databáza, kompilátor atď;
  • skripty, ktoré sa môžu často meniť;

Príklady jazyka lepidla:

  • AppleScript
  • awk
  • JCL
  • Lua
  • m4
  • Perl
  • skripty Unix Shell (ksh, csh, bash, sh a ďalšie)
  • VBScript
  • Jazyk pracovného toku
  • Prostredie Windows PowerShell
  • XSLT

Zariadenia, ako sú programovateľné kalkulačky, môžu mať aj vlastné lepiace jazyky. Napríklad kalkulačku Texas Instruments TI-92 možno podľa továrenského nastavenia naprogramovať pomocou jazyka príkazového skriptu. Kalkulačka TI-NSpire rozumie jazyku Lua. Iné rozumejú nejakému jazyku Basic, prípadne Lisp alebo niečomu inému.

Jazyky na riadenie úloh a shelly

Táto skupina pochádza z automatizácie riadenia úloh, ktorá sa týka spúšťania a kontroly správania systémových programov, počnúc JCL od IBM. Mnohé interprety týchto jazykov fungujú aj ako interprety príkazového riadka, napríklad unixový shell alebo MS-DOS COMMAND.COM. Iné, ako napríklad AppleScript, ponúkajú použitie príkazov podobných anglickým na vytváranie skriptov.

Skriptovanie grafického rozhrania

Pri vytváraní grafických používateľských rozhraní je potrebné ich testovať. Boli vytvorené špecializované skriptovacie jazyky, ktoré umožňujú ovládať grafické okná, ponuky, tlačidlá atď. rovnako ako ľudský používateľ. Mnohokrát sa dajú použiť na presné kopírovanie toho, čo robí človek (pohyb myšou, klikanie alebo písanie na klávesnici). Táto kopírovaná a zapamätaná akcia alebo súbor akcií sa nazýva makro.

Jazyky špecifické pre aplikácie

Mnohé veľké aplikácie obsahujú skriptovací jazyk vytvorený len pre túto aplikáciu. Aplikácia môže byť hra alebo obchodný program. Tento typ jazyka je vytvorený pre jednu aplikáciu. Tvária sa ako jazyk na všeobecné použitie (napr. QuakeC, modelovaný podľa jazyka C), majú vlastné vlastnosti, ktoré ich odlišujú.

Jazyky s možnosťou rozšírenia/vloženia

Je to ako skriptovacie jazyky špecifické pre aplikáciu, pretože riadi aplikáciu, ale tento jazyk sa dá použiť v mnohých aplikáciách.

JavaScript sa začal používať ako jazyk na skriptovanie vo webových prehliadačoch, ale v súčasnosti je to univerzálny jazyk na vkladanie. Používa sa napríklad aj v produktoch spoločnosti Adobe.

Niektoré jazyky časom prechádzajú od jedného typu k druhému, zvyčajne keď sa pridávajú schopnosti robiť viac vecí.

Otázky a odpovede

Otázka: Čo je to skriptovací jazyk?


Odpoveď: Skriptovací alebo skriptovací jazyk je programovací jazyk, ktorý podporuje skripty.

Otázka: Čo sú to skripty?


Odpoveď: Skripty sú zvyčajne krátke počítačové programy, ktoré vykonávajú kroky, ktoré by mohol vykonať človek po jednom.

Otázka: Prečo sú skripty užitočné?


Odpoveď: Automatizuje sa tým práca, aby bola jednoduchšia a spoľahlivejšia.

Otázka: Je ťažké naučiť sa skriptovací jazyk?


Odpoveď: Skriptovací jazyk je často jednoduchší jazyk a ľahšie sa učí ako iné jazyky, ale napriek tomu dokáže robiť veľa vecí.

Otázka: Kde sa môžu skripty spúšťať?


Odpoveď: Skripty sa môžu spúšťať vo vnútri iného programu, napríklad vo webovom prehliadači alebo v programe Microsoft Excel.

Otázka: Čo je shell v skriptovacích jazykoch a ako sa používa?


Odpoveď: Môže to byť aj shell, ktorý sa spúšťa z rozhrania príkazového riadka a uskutočňuje volania operačného systému (OS). Shell sa považuje za interaktívny - používateľ si môže vybrať, čo má napísať, a shell na príkaz reaguje. Môžu sa používať na riadenie úloh na mainframoch a serveroch.

Otázka: Môže byť všeobecný jazyk skriptovacím jazykom?


Odpoveď: Niektorí ľudia tvrdia, že skriptovací jazyk musí byť viazaný na konkrétne použitie. Iní používajú širšiu definíciu a zahŕňajú všeobecné programovacie jazyky, ktoré sú interpretované, nie kompilované. Všeobecný jazyk znamená, že sa dá použiť mnohými spôsobmi na rôzne veci. Niektoré univerzálne jazyky (napríklad Java) majú varianty, ktoré možno skriptovať. Neexistuje žiadne konkrétne pravidlo, čo je alebo nie je skriptovací jazyk.

AlegsaOnline.com - 2020 / 2023 - License CC3