Skriptspråk

Et skriptspråk , i informatikk , er et tolket programmeringsspråk som vanligvis er beregnet på automatiseringsoppgaver til operativsystemet ( batch ) eller applikasjoner ( makroer ), eller for å brukes i webprogrammeringnettsider . [1] Programmene utviklet med disse språkene kalles scripts , en betegnelse på det engelske språket som brukes i teatret for å indikere manuset(også kalt lerret) der delene som må tolkes av skuespillerne spores. Et skriptspråk er et programmeringsspråk for et kjøretidssystem som automatiserer utførelsen av oppgaver som ellers ville blitt utført individuelt av en menneskelig operatør [2] .

Historie

Til å begynne med ble de første skriptspråkene født fra behovet for å automatisere visse operasjoner som utførelse av programmer og interaksjonen med dem: det var ikke mange konstruksjoner og de ble ofte henvist til spesifikke oppgaver. Skriptspråk har også funnet anvendelse i mange områder av programvaredesign , og kan brukes som uavhengige språk for implementering av algoritmer for et bredt spekter av oppgaver.

Forskjellen med hensyn til andre tolkede språk skyldes hovedsakelig "historiske" årsaker. Opprinnelig var de første skriptspråkene veldig rudimentære og tillot få og enkle operasjoner, og var ikke egnet for å skrive ekte programmer. Moderne skriptspråk har da fått konstruksjonene og kraften til andre språk; skillet forblir kun på grunnlag av språkbruken. [3]

For spredningen av disse språkene var språk som Tcl og Lua av grunnleggende betydning , spesielt utviklet som skriptspråk , som kunne integreres i enhver applikasjon eller brukes uavhengig. Utviklingen av disse språkene ga større fordeler enn etableringen av nye språk for spesifikke applikasjoner, og unngikk utvikleren å skrive en språkoversetter og lot brukeren bruke sine ferdigheter.

Common Gateway Interface ( CGI) tillot skriptspråk å kontrollere webservere for å kommunisere over nettet . Noen av skriptspråkene som brukte CGI i den tidlige utviklingen av nettet var Perl , ASP og PHP .

Det er mange programvarer som integrerer skriptspråk. For eksempel er moderne nettlesere utstyrt med et språk for å skrive utvidelser til selve nettleseren, og mange andre standardspråk for å kontrollere nettleseren, for eksempel ECMAScript (ofte kjent som JavaScript ), CSS og HTML . Til dags dato, ifølge TIOBE-indeksen , utgjør skriptspråk omtrent en tredjedel av de mest populære programmeringsspråkene i verden [4] [5] .

Beskrivelse

De består vanligvis av enkle programmer som har som formål å samhandle med andre, mye mer komplekse programmer, der de viktigste operasjonene finner sted. Skript skiller seg fra programmene de samhandler med, vanligvis implementert på et annet, utolket språk . I tillegg blir skript ofte opprettet eller modifisert av sluttbrukeren. Om våren er bruken av shabang hyppig .

I skriptspråk er programmereren vanligvis ikke interessert i systemressursene som det ferdige programmet må forbruke, og overlater alt til systemet selv. Med ressurser mener vi for eksempel håndtering av minneallokering og -deallokering , konvertering mellom typer , initialisering og lukking av applikasjonen.

På denne måten unngås mange problemer som er typiske for tradisjonell programmering, som er gjenstand for lumske, ikke lett identifiserbare og farlige feil, og tvinger også programmereren til å håndtere problemer som ikke er strengt knyttet til formålet med programvaren han må lage. Ved å bruke et skriptspråk kan du fokusere direkte på å løse problemet.

Typologi

Språk for jobbkontroll

De første datasystemene, typisk mainframe , var ment for bruk av flere brukere (flerbrukere) som kunne gjøre bruk av datamaskinens ressurser gjennom fifo -disiplinen som er typisk for batchbehandlingssystemer [ 6 ] De betydelige kostnadene ved 'maskinvare gjorde at flere institusjoner , selv med forskjellige kontorer, brukte den samme datamaskinen gjennom eksterne terminaler ; så brukeren, som ikke var i stand til å samhandle direkte med maskinen, sendte jobben sin (program, data og instruksjoner for utførelse av programmet) gjennom terminalene. [7] Dermed oppsto behovet for et språk for å kunne kode instruksjonene knyttet til utførelsen av jobben din, for eksempel:

For dette formålet ble de første skriptspråkene i historien født, jobbkontrollspråkene (forkortet JCL). [8]

Bash scripting

Begrepet Bash - skripting refererer til opprettelsen av skript som vanligvis er nyttige for å automatisere rutineoperasjoner på Unix-lignende operativsystemer som Linux . Operasjoner som krever innsetting av flere kommandoer på tekstskallet kan dermed settes inn i en enkelt fil ved å bruke syntaksen og operatorene som er typiske for dette språket. Skriptene som lages på denne måten kan i stor grad forenkle brukerens arbeid. [9]

På noen systemer som Linux kan du planlegge at skript skal kjøres , for eksempel kan du kjøre noen skript hver gang systemet startes.

Her er et eksempel på et bash- skript for å slette filer i / var / log:

- Rydde opp – Å bli drevet som root, selvfølgelig. #! / bin / bash cd / var / log cat / dev / null> meldinger cat / dev / null> wtmp echo "Logger slettet." utgang 0

GUI-skripting

Med bruken av grafiske grensesnitt ble en typologi av skriptspråk rettet mot datakontroll født. Disse språkene samhandler med de grafiske vinduene, menyene, knappene og grafiske objektene som systemet genererer, og simulerer handlingene som en menneskelig bruker ville gjort. Deres formål er å automatisere brukerhandlinger. Språk der kontroll skjer ved å trykke på tastene eller klikke på musen kalles også makroer . Denne kategorien av språk var opprinnelig ment å brukes til å kontrollere alle applikasjoner som kunne kjøres på en datamaskin basert på grafiske grensesnitt; men i praksis avhenger støtte for disse språkene av applikasjonene og operativsystemet . Det er imidlertid noen unntak fra denne begrensningen. Noen GUI-relaterte skriptspråk er basert på å gjenkjenne grafiske objekter ved hjelp av piksler på skjermen; de er ikke avhengige av operativsystemet eller applikasjonen.

Applikasjonsspesifikke språk

Mange programmer inkluderer et idiomatisk skriptspråk tilpasset brukerens behov. På samme måte bruker noen dataspill et skriptspråk for å utvide handlingene til sekundære karakterer og miljøet. Språk av denne typen er utviklet for en enkelt applikasjon; og selv om de kan ligne et generisk språk (f.eks . QuakeC , modellert på C ) [10] , har de personlige egenskaper som skiller dem fra dem. Emacs Lisp , en velutviklet og kraftig dialekt av Lisp , inneholder mange spesialfunksjoner som gjør den mer egnet for å utvide redigeringsfunksjonene til Emacs .

Nettleser

Nettlesere er applikasjoner for visning av nettsider. En rekke spesialspråk er utviklet for å kontrollere driften og funksjonaliteten. Blant disse vises JavaScript , hvis navn kan være misvisende på grunn av dets tilsynelatende avledning fra Java (i virkeligheten har de to språkene nesten ingenting til felles); VBScript produsert av Microsoft , som bare fungerer med nettleseren Internet Explorer ; XUL produsert av Mozilla -prosjektet , som bare fungerer med Firefox ; XSLT , et bestemt språk som forvandler XML-innhold til en ny form. [11] Teknikker som involverer kombinasjonen av skripting levert av XML og JavaScript har vokst til det nivået at de får et riktig navn: AJAX .

Webserver

På serversiden av HTTP - koblingen leverer applikasjonsservere og andre dynamiske innholdsservere som innholdsstyringssystemet innhold gjennom en lang rekke teknikker og teknologier preget av skripttilnærmingen. Spesielt dominerende på dette feltet er PHP , JSP og ASP , men andre språk som Ruby og Python , som har blitt veldig populære hovedsakelig takket være deres berømte rammeverk (henholdsvis Ruby on Rails og Django ), har skåret ut plassen deres.

Tekstbehandlingsspråk

Behandlingen av tekstdokumenter var en av de første anvendelsene av skriptspråk. Skript skrevet for Unix -verktøy som Awk , sed og grep automatiserer oppgaver som involverer tekst- og loggfilkonfigurasjon . Av stor betydning er det regulære uttrykket , et språk skapt for den formelle beskrivelsen av tekstens leksikalske struktur, og brukt av alle disse verktøyene.

Perl ble opprinnelig designet for å bygge bro over begrensningene til disse verktøyene, men har vokst til å bli et av de mest populære allmennbruksspråkene.

Generiske dynamiske språk

Noen språk, som Perl , startet som skriptspråk , men ble implementert på språk som var egnet for mye bredere problemer. Andre lignende språk er blitt beskrevet som " skriptspråk " for denne likheten, selv om de oftere brukes til å programmere applikasjoner.

Utvidelse / innebygde språk

Et betydelig antall språk er designet for å erstatte applikasjonsspesifikke programmeringsspråk, for å kunne integreres i programmer. Programmereren (som jobber i C eller et annet språk) inkluderer "Hooks" som skriptspråket kan kontrollere applikasjonen gjennom. Disse språkene tjener samme formål som applikasjonsspesifikke språk, men med fordelen av å tillate overføring av egenskaper mellom applikasjon og applikasjon. JavaScript startet opprinnelig som et språk i nettlesere; språkstandardisering som ECMAScript har imidlertid gjort det populært som et generisk innebygd språk. Spesielt Mozillas implementering av SpiderMonkey brukes i mange andre miljøer som Yahoo! Widget Engine . Andre programmer som bruker ECMAScript-implementeringer inkluderer Adobe -produkter , som Adobe Flash og Adobe Acrobat .

Tcl ble opprettet som et utvidelsesspråk som skal brukes parallelt som et generellt språk, og emulerer rollen til språk som Python , Perl og Ruby .

Andre komplekse og oppgavespesifikke applikasjoner kan inkludere og eksponere et integrert programmeringsspråk for å gi brukerne større kontroll og gi dem mer funksjonalitet enn det som kan være tilgjengelig gjennom et brukergrensesnitt. For eksempel, Autodesk Maya 3D inkorporerer MEL -skriptspråket , eller Blender som bruker Python for samme rolle. [12]

Andre typer applikasjoner som trenger å legge til rask funksjonalitet eller optimaliseringssykluser (for eksempel en grafikkmotor ) bruker også innebygde språk. Under utviklingen lar den prototyper modifiseres raskt og enkelt, uten å tvinge brukeren til å ha en grundig forståelse av programmet (noe som kan ta lang tid). Skriptspråk, på grunn av deres allsidighet, er mye brukt, og i dag kan det skryte av et bredt spekter som tilbyr språk som Lua og Python , men også mindre kjente som Angelscript og Squirrel .

Populære språk

I følge en global undersøkelse utført av EvansData i 2008, [13] er det mest kjente skriptspråket JavaScript , PHP på andreplass , mens Perl tar tredjeplassen.

Merknader

  1. ^ Flavius ​​​​Florin Harabor, Skriptspråk : her er noen , på insidevcode.eu , 14. januar 2015. Hentet 21. februar 2015 .
  2. ^ web.archive.org , https://web.archive.org/web/20150923211452/http://www.cse.wustl.edu/~loui/praiseieee.html# . Hentet 27. april 2022 .
  3. ^ Definisjon av et skriptspråk , på cs.man.ac.uk. Hentet 13. mars 2010 .
  4. ^ indeks | TIOBE - The Software Quality Company , på www.tiobe.com . Hentet 27. april 2022 .
  5. ^ Hva er skriptspråk? , på IONOS Digitalguide . Hentet 27. april 2022 .
  6. ^ Utvikling av operativsystemer , på dmi.unict.it . Hentet 12. mars 2010 (arkivert fra originalen 25. februar 2010) .
  7. ^ jobbdefinisjon (IT-ordliste) , på pc-facile.com . Hentet 13. mars 2010 .
  8. ^ JCL Quick Reference , på simotime.com . Hentet 12. mars 2010 .
  9. ^ Mendel Cooper, Advanced Bash Scripting Guide (introduksjon) , på pluto.it . Hentet 12. mars 2010 .
  10. ^ QuakeC , på ouns.nexuizninjaz.com . _ _ Hentet 13. mars 2010 .
  11. ^ Bruk av skriptspråk i nettmiljøet , på users.libero.it . Hentet 12. mars 2010 (arkivert fra originalen 14. mars 2010) .
  12. ^ Python og Blender , på jmsoler.free.fr . Hentet 12. mars 2010 .
  13. ^ The State of the Scripting Universe , cio.com . Hentet 13. mars 2010 .

Relaterte elementer

Andre prosjekter

Eksterne lenker