Et script- eller scriptsprog er et computersprog, der ikke har brug for kompileringstrinnet og snarere fortolkes én efter én under kørsel. Det er der, hvor scriptet er skrevet, og hvor instruktioner til et runtime-miljø er skrevet. I modsætning til programmeringssprog, der kompileres først, før de køres, kompilerer scriptsprog ikke filen og udfører filen uden at være kompileret.
Scripts bruges ofte til at skabe dynamiske webapplikationer i dag, fordi de er knyttet til webudvikling. Server-Side Scripting Languages og Client-Side Scripting Languages er de to typer scriptsprog. Python, PHP og Perl er eksempler på scriptsprog på serversiden, mens JavaScript er det bedste eksempel på et scriptsprog på klientsiden. Disse sprog udvikles ofte med det formål at kommunikere med andre programmeringssprog.
Der er flere tilgængelige scriptsprog, nogle er som følger:
Anvendelse af scriptsprog
Der er flere områder, hvor scriptsprog bruges:
- Scriptsprog bruges på serversiden såvel som på klientsiden og er også meget udbredt i webapplikationer. Sprogene som JavaScript, Python, PHP og Perl er eksempler på scriptsprog på serversiden, og JavaScript, jQuery, AJAX er eksempler på scriptsprog på klientsiden.
- Ligesom Python-scripts, Perl, Shell er alle de scriptsprog, som bruges i systemadministration.
- Det bruges til at konstruere plugins og udvidelser til aktuelle applikationer såvel som i spil og multimedier.
Fordele ved scriptsprog
Nogle andre nøglepunkter om fordele ved scriptsprog er også givet nedenfor:
- Det kan nemt overføres mellem forskellige operativsystemer.
- Det udfører filerne direkte uden behov for kompilering, men nogle gange kan det være nødvendigt at kompilere, når det er nødvendigt.
- Det er en open source-platform, der gør det muligt for brugere at se og redigere scriptet, når det kræves.
- Sammenlignet med et egentligt program er det meget hurtigere at udvikle.
Ulemper ved scriptsprog
- Det gør det muligt for brugere at se og kode, der kan være forbudt af nogle virksomheder.
- Disse sprog kompilerede ikke filen og fortolkede den direkte, som skal installere en fortolker eller et separat program af brugerne, før de kører scriptet.
- Sammenlignet med et kompileret program kan scriptsprog være langsomme i nogle situationer.
Forskellen mellem scripting og programmeringssprog
Selvom alle scriptsprog er programmeringssprog, har de en forskel ved, at scriptsprog direkte fortolker filerne og ikke behøver kompileringstrinnet. For eksempel behøver et program, der er hvidt i scriptsproget som PHP eller JavaScript, ikke at blive kompileret, mens et C-program, der skal kompileres, før det kører.
ressourceallokeringsgraf
Generelt, sammenlignet med fortolkede programmer, kører kompilerede programmer hurtigere, da de først konverteres indbygget maskinkode, før de køres. Fortolkeren læser og analyserer kodesætningerne, hver gang de stødes på, og hvis der opdages fejl, støder den på dem og stopper på det tidspunkt, hvorimod compileren læser og analyserer koden én gang og viser de fejl, som koden indeholder. På grund af de forbedrede beregningsmuligheder i moderne hardware og avanceret kodningspraksis bliver forskellen mellem scraping og programmeringssprog praktisk talt ved at blive sløret.
Når man skelner mellem sprog som scripting og programmering, skal det miljø, de vil blive brugt i, tages i betragtning. Grunden til dette er, at udviklere skal være i stand til at konstruere en compiler til et scriptsprog såsom JavaScript og bruge det som et ikke-scripting (kompileret sprog), samt en tolk til et kompileret sprog som C eller C++ og bruge det som et scriptsprog.
V8 af Google Chromes JavaScript-motor er et rigtigt eksempel på dette. V8 konverterer JavaScript-kode til maskinkode i stedet for at fortolke den. Sprog som JavaScript, PHP, Python og VBScript er generelt blevet brugt uden et eksplicit kompileringstrin, hvorimod C og C++ har et eksplicit kompileringstrin.
De vigtigste forskelle mellem scripting og programmering er angivet i tabellen nedenfor:
Scripting sprog | Programmeringssprog |
---|---|
Det er baseret på Tolken. | Det er baseret på compileren. |
Det bruges til at kombinere eksisterende komponenter. | Det bruges til at udvikle fra bunden. |
Det kører inde i programmet og er afhængigt af det. | Det er uafhængigt af et forældreprogram. |
Det fungerer til at konvertere instruktioner på højt niveau til maskinsprog. | Det virker at konvertere hele programmet til maskinsprog på én gang. |
Det kræver ikke at kompilere filen og køre direkte. | Det kræver først at kompilere filen. |
Den har ingen filtype. | Den indeholder .exe-filtypen. |
Det understøtter ikke datatyper, grafisk design og brugergrænsefladedesign, eller understøtter begrænset. | Det har rig understøttelse af grafisk design, datatyper og brugergrænsefladedesign. |
Brugere kan nemt skrive og bruge det. | Det kan være svært at bruge og skrive. |
Den har brug for en vært. | Det behøver ikke en vært, da det kan udføres selv. |
Det kræver lav vedligeholdelse. | Det kræver høj vedligeholdelse. |
Eksempler på scriptsprog inkluderer VB Script, JavaScript, Perl, Ruby og PHP. | Eksempler på programmeringssprog omfatter COBOL, Java, VB, Basic, C, C++, C# og Pascal. |