Skriptni jezik

Skriptni ali skriptni jezik je programski jezik, ki podpira skripte. Skripte so običajno kratki računalniški programi, ki opravijo korake, ki bi jih lahko po vrsti opravila oseba. S tem se delo avtomatizira, da je lažje in zanesljivejše. Skriptni jezik je pogosto preprostejši in se ga je lažje naučiti kot druge jezike, vendar še vedno lahko naredi veliko stvari.

Skripte se lahko izvajajo znotraj drugega programa, na primer v spletnem brskalniku ali programu Microsoft Excel. Lahko so tudi lupina, ki se zažene iz vmesnika ukazne vrstice in kliče operacijski sistem (OS). Lupina velja za interaktivno - uporabnik lahko izbere, kaj naj vnese, lupina pa se odzove na ukaz. Te se lahko uporabljajo za nadzor delovnih mest na glavnih računalnikih in strežnikih.

Nekateri pravijo, da mora biti skriptni jezik vezan na določeno uporabo. Drugi uporabljajo širšo opredelitev in vključujejo splošne programske jezike, ki se interpretirajo in ne sestavljajo. Splošno namenski pomeni, da ga je mogoče uporabljati na več načinov za različne stvari. Nekateri splošni jeziki (kot je Java) imajo različice, ki jih je mogoče zapisati v skripte (Javascript). Ni posebnih pravil o tem, kaj je ali ni skriptni jezik.

Primeri

Nekateri pogosti primeri skriptnih jezikov:

  • Bash in lupina C kot nadzorna jezika za operacijske sisteme Unix ali Unixu podobne operacijske sisteme.
  • Skripte, ki se izvajajo znotraj drugih aplikacij, imenujemo razširitveni jezik. Spletni brskalniki omogočajo več vrst skript, med drugim ECMAScript (JavaScript) ali XUL. Googlova domača stran na primer uporablja JavaScript. Visual Basic for Applications se uporablja v pisarni Microsoft Office. Lua je jezik, ki je namenoma narejen kot razširitveni jezik in se lahko uporablja znotraj številnih aplikacij.
  • Igre, ki imajo skriptne razširitve, vključujejo virtualni svet Second Life in železniške simulatorje Trainz. V drugih igrah, kot je Wesnoth, so različne dejanske igre, ki se igrajo, skripte, ki jih napišejo drugi uporabniki.
  • Jeziki za obdelavo besedila sed in AWK
  • Splošni namen: Perl, Tcl in Python so programski jeziki visoke ravni (bližje človeškemu jeziku kot strojni kodi), ki se lahko uporabljajo za veliko različnih stvari. Nekateri od teh jezikov so bili najprej ustvarjeni za določeno uporabo, nato pa so se spremenili v jezike za splošne namene.

Značilnosti

Večina skriptnih jezikov je narejena tako, da se jih je enostavno naučiti. Pogosto so lahko kratke datoteke z izvorno kodo ali pa se vnesejo po en ukaz v vmesnik ukazne vrstice, ki ima zanko za branje, vrednotenje in tiskanje (REPL, jezikovna lupina). To običajno pomeni preprost nabor ukazov. Morda ni funkcij ali glavnega programa, preprosto se izvaja od začetka do konca. Če kaj ne deluje, lahko programer hitro izvede spremembe in znova zažene program. Zaradi tega je skriptni jezik dober za izdelavo hitrega prototipa, s katerim preverimo, ali zamisel deluje.

Večina ljudi na primer Jave ne imenuje skriptni jezik zaradi njene dolge sintakse in pravil o tem, kateri razredi obstajajo v katerih datotekah, ter zato, ker Jave ni mogoče interaktivno izvajati v programu REPL. Potrebuje datoteke z izvorno kodo, te pa lahko vsebujejo le definicije, ki jih mora uporabljati gostiteljska aplikacija ali zaganjalnik aplikacij. (Java ni isto kot JavaScript).

Vendar Python omogoča izbiro - funkcije lahko shranite v datoteko, lahko ga izvajate brez funkcij in uporabljate imperativni slog programiranja ali ga celo uporabljate interaktivno (vnašate in izvajate po eno vrstico naenkrat).

natisni ("Hello World")

Ta ena vrstica kode Pythona izpiše "Hello World"; funkcija main() ali kaj drugega ni potrebna.

Skriptni jezik se običajno interpretira iz izvorne kode ali bajtokode. Vendar pa mora skript nekaj zagnati (interpretirati), da ga računalnik razume. To je aplikacija ali nekaj v operacijskem sistemu. Ta je pogosto napisana v zgoščenem jeziku in distribuirana v obliki strojne kode (kot izvedljiva datoteka, ki za človeka nima smisla).

Skriptni jeziki so lahko namenjeni ljudem, ki uporabljajo program - razvoj za končne uporabnike. V drugih primerih jih lahko programerji ustvarijo za lastno uporabo. Skriptni jeziki pogosto uporabljajo abstrakcijo, ki je oblika skrivanja informacij. To pomeni, da uporabnikom ni treba poznati podrobnosti o vrstah spremenljivk, shranjevanju podatkov in upravljanju pomnilnika.

Skripte pogosto izdela ali spremeni oseba, ki jih izvaja, vendar se nekateri delijo ali prodajajo drugim. Na primer, ko so veliki deli iger napisani v skriptnem jeziku. Včasih je mogoče skripto sestaviti, preden jo začnejo uporabljati drugi. Ko je enkrat sestavljena, se bo izvajala hitreje in za njeno izvajanje ne bo potrebna druga aplikacija. To pa končnim uporabnikom preprečuje, da bi spremenili kodo.

Zgodovina

Prvi računalniki mainframe (v 50. letih prejšnjega stoletja) niso bili interaktivni, temveč so uporabljali skripte, shranjene v paketnih datotekah. IBM-ov jezik JCL (Job Control Language) je običajen primer skriptnega jezika, ki se uporablja za nadzor paketne obdelave.

Prve interaktivne lupine so bile izdelane v šestdesetih letih prejšnjega stoletja za pomoč pri oddaljenem upravljanju prvih sistemov za delitev časa. V njih so se uporabljale lupinske skripte, ki lahko izvajajo računalniške programe znotraj računalniškega programa, lupine. Calvinu Mooersu v njegovem jeziku TRAC se na splošno pripisujejo zasluge za izum zamenjave ukazov. Ta omogoča, da ukazi spreminjajo skripto (samopreminjajoča se koda). Multics te funkcije imenuje aktivne funkcije. Louis Pouzin je okoli leta 1964 napisal zgodnji procesor za ukazne skripte z imenom RUNCOM za CTSS. Stuart Madnick z MIT je leta 1966 napisal skriptni jezik za IBM-ov CP/CMS. Ta procesor je sprva imenoval COMMAND, pozneje pa EXEC. Multics je vključeval tudi izpeljanko CTSS RUNCOM, prav tako imenovano RUNCOM. EXEC sta sčasoma nadomestila EXEC 2 in REXX.

Jeziki, kot sta Tcl in Lua, so bili že od začetka zasnovani kot splošni skriptni jeziki, ki jih je mogoče uporabiti v kateri koli aplikaciji. Drugi jeziki, kot je Visual Basic for Applications (VBA), so lahko počeli podobno, vendar so morali delovati le z določenimi aplikacijami. Uporaba splošnega skriptnega jezika namesto izdelave novega jezika za vsako aplikacijo običajno olajša delo tako tistemu, ki piše aplikacijo, kot uporabniku, ki piše skripte.

Vrste skriptnih jezikov

Jeziki lepila

Za povezovanje različnih aplikacij se včasih uporablja skriptiranje. Temu pravimo lepljena koda, jezik, ki je narejen samo za ta namen, pa je lepljeni jezik. Pogosti primeri povezovalnih jezikov so cevovodi in skriptne lupine. Če pa je v skriptni datoteki zapisane veliko logike, je bolje, da o njej razmišljamo kot o preprosto drugi programski aplikaciji in ne kot o "lepilu".

Jeziki lepila so še posebej uporabni za pisanje in vzdrževanje:

  • ukaze po meri za ukazno lupino;
  • manjše programe kot tiste, ki so bolje izvedeni v sestavljenem jeziku;
  • "ovojni" programi, ki pred ali po zagonu aplikacije, na primer preglednice, podatkovne baze, prevajalnika itd., opravijo nekaj avtomatiziranih opravil;
  • skripte, ki se lahko pogosto spreminjajo;

Primeri jezika lepila:

  • AppleScript
  • awk
  • JCL
  • Lua
  • m4
  • Perl
  • skripte Unix Shell (ksh, csh, bash, sh in druge)
  • VBScript
  • Jezik delovnega toka
  • Windows PowerShell
  • XSLT

Naprave, kot so programirljivi kalkulatorji, imajo lahko tudi lastne jezike lepila. Na primer, kalkulator Texas Instruments TI-92 je po tovarniških nastavitvah mogoče programirati z ukaznim skriptnim jezikom. Kalkulator TI-NSpire razume jezik Lua. Drugi razumejo nekakšen jezik Basic, morda Lisp ali kaj drugega.

Jeziki za nadzor dela in lupine

Ta skupina je nastala z avtomatizacijo nadzora delovnih mest, ki se nanaša na zagon in nadzor obnašanja sistemskih programov, začenši z IBM-ovim JCL. Prevajalniki mnogih od teh jezikov delujejo tudi kot prevajalniki ukazne vrstice, kot sta lupina Unix ali MS-DOS COMMAND.COM. Drugi, kot je AppleScript, ponujajo uporabo angleškim ukazom podobnih ukazov za izdelavo skript.

Pisanje skript grafičnega vmesnika

Pri gradnji grafičnih uporabniških vmesnikov je potreben način njihovega testiranja. Za upravljanje grafičnih oken, menijev, gumbov itd. so bili izdelani specializirani skriptni jeziki, s katerimi je mogoče upravljati grafična okna, menije, gumbe in podobno, kot bi to počel človeški uporabnik. Velikokrat jih je mogoče uporabiti za natančno kopiranje tega, kar počne človek (premikanje miške, klikanje ali tipkanje na tipkovnici). To dejanje ali niz dejanj, ki se kopirajo in zapomnijo, se imenuje makro.

Jeziki, specifični za uporabo

Veliko velikih aplikacij vključuje skriptni jezik, ustvarjen samo za to aplikacijo. Aplikacija je lahko igra ali poslovni program. Ta vrsta jezika je narejena za eno samo aplikacijo. Na videz so podobni splošnim jezikom (npr. QuakeC, narejen po vzoru C), imajo pa prilagojene funkcije, ki jih razlikujejo.

Jeziki, ki jih je mogoče razširiti/vgraditi

Ta jezik je podoben skriptnim jezikom za posamezne aplikacije, saj nadzoruje aplikacijo, vendar se lahko uporablja v številnih aplikacijah.

JavaScript se je začel kot jezik za pisanje skript v spletnih brskalnikih, zdaj pa je splošno uporaben jezik za vgradnjo. Uporablja se na primer tudi v izdelkih podjetja Adobe.

Nekateri jeziki sčasoma preidejo iz ene vrste v drugo, ponavadi ko dodajo zmožnosti za več stvari.

Vprašanja in odgovori

V: Kaj je skriptni jezik?


O: Skriptni ali skriptni jezik je programski jezik, ki podpira skripte.

V: Kaj so skripte?


O: Skripte so običajno kratki računalniški programi, ki opravijo korake, ki bi jih lahko po vrsti opravila oseba.

V: Zakaj so skripte uporabne?


O: S tem se delo avtomatizira, da je lažje in zanesljivejše.

V: Ali se je skriptnega jezika težko naučiti?


O: Skriptni jezik je pogosto preprostejši jezik in se ga je lažje naučiti kot druge jezike, vendar še vedno lahko naredi veliko stvari.

V: Kje se lahko izvajajo skripte?


O: Skripte se lahko izvajajo znotraj drugega programa, na primer v spletnem brskalniku ali programu Microsoft Excel.

V: Kaj je lupina v skriptnih jezikih in kako se uporablja?


O: Lahko so tudi lupina, ki se zažene iz vmesnika ukazne vrstice in kliče operacijski sistem (OS). Lupina velja za interaktivno - uporabnik lahko izbere, kaj naj vnese, lupina pa se odzove na ukaz. Te se lahko uporabljajo za nadzor delovnih mest na glavnih računalnikih in strežnikih.

V: Ali je lahko splošni jezik skriptni jezik?


O: Nekateri pravijo, da mora biti skriptni jezik vezan na določeno uporabo. Drugi uporabljajo širšo opredelitev in vključujejo splošne programske jezike, ki so interpretirani in ne sestavljeni. Splošno namenski jezik pomeni, da se lahko uporablja na več načinov za različne stvari. Nekateri splošni jeziki (kot je Java) imajo različice, ki jih je mogoče zapisati v skripte. Posebnega pravila o tem, kaj je ali ni skriptni jezik, ni.

AlegsaOnline.com - 2020 / 2023 - License CC3