Skripta ili skriptni jezik računalni je jezik koji ne treba korak kompilacije i radije se tumači jedan po jedan tijekom izvođenja. To je mjesto gdje se piše skripta i gdje se pišu upute za run-time okruženje. Za razliku od programskih jezika koji se prvo kompajliraju prije pokretanja, skriptni jezici ne kompiliraju datoteku i izvršavaju datoteku bez kompajliranja.
Skripte se danas često koriste za izradu dinamičkih web aplikacija jer su povezane s web razvojem. Skriptni jezici na strani poslužitelja i skriptni jezici na strani klijenta dvije su vrste skriptnih jezika. Python, PHP i Perl primjeri su skriptnih jezika na strani poslužitelja, dok je JavaScript najbolji primjer skriptnog jezika na strani klijenta. Ovi se jezici često razvijaju s ciljem komunikacije s drugim programskim jezicima.
Postoji više dostupnih skriptnih jezika, neki od njih su sljedeći:
Primjena skriptnih jezika
Postoji nekoliko područja u kojima se koriste skriptni jezici:
- Skriptni jezici koriste se na strani poslužitelja kao i na strani klijenta, a također se široko koriste u web aplikacijama. Jezici kao što su JavaScript, Python, PHP i Perl primjeri su skriptnih jezika na strani poslužitelja, a JavaScript, jQuery, AJAX primjeri su skriptnih jezika na strani klijenta.
- Kao i Python skripte, Perl, Shell su svi skriptni jezici koji se koriste u administraciji sustava.
- Koristi se za izradu dodataka i proširenja za trenutne aplikacije, kao iu igrama i multimediji.
Prednosti skriptnih jezika
Neke druge ključne točke prednosti skriptnih jezika također su navedene u nastavku:
- Može se lako prebacivati između različitih operativnih sustava.
- Izravno izvršava datoteke bez potrebe za kompilacijom, ali ponekad može biti potrebno kompilirati kada je to potrebno.
- To je platforma otvorenog koda koja korisnicima omogućuje pregled i uređivanje skripte kada je to potrebno.
- U usporedbi sa stvarnim programom, mnogo se brže razvija.
Nedostaci skriptnih jezika
- Korisnicima omogućuje pregled i kodiranje koje neke tvrtke mogu zabraniti.
- Ovi jezici nisu kompajlirali datoteku i izravno je interpretirali, a korisnici trebaju instalirati tumač ili poseban program prije pokretanja skripte.
- U usporedbi s prevedenim programom, skriptni jezici mogu biti spori u nekim situacijama.
Razlika između skriptnog i programskog jezika
Iako su svi skriptni jezici programski jezici, razlika je u tome što skriptni jezici izravno interpretiraju datoteke i ne trebaju korak kompilacije. Na primjer, program zabijeljen u skriptnom jeziku kao što je PHP ili JavaScript ne treba kompajlirati, dok C program treba kompajlirati prije pokretanja.
gimp spremanje kao jpeg
Općenito, u usporedbi s interpretiranim programima, prevedeni programi izvode se brže jer se prvo pretvaraju izvorni strojni kod prije pokretanja. Interpretator čita i analizira kodne naredbe svaki put kada se na njih naiđe, i ako se otkriju greške, nailazi na njih i zaustavlja se na tom mjestu, dok prevodilac čita i analizira kod samo jednom, te prikazuje greške koje kod sadrži. Praktično, zbog poboljšanih računalnih mogućnosti modernog hardvera i naprednih praksi kodiranja, razlika između struganja i programskih jezika postaje zamagljena.
Prilikom razlikovanja jezika kao što su skriptni i programski jezici, mora se uzeti u obzir okruženje u kojem će se koristiti. Razlog za to je što programeri moraju biti u mogućnosti konstruirati kompajler za skriptni jezik kao što je JavaScript i koristiti ga kao ne-skriptni (prevedeni jezik), kao i tumač za kompajlirani jezik kao što je C ili C++ i koristiti kao skriptni jezik.
V8 JavaScript motora Google Chromea pravi je primjer toga. V8 pretvara JavaScript kod u strojni kod umjesto da ga tumači. Jezici poput JavaScripta, PHP-a, Pythona i VBScripta općenito se koriste bez eksplicitnog koraka kompilacije, dok C i C++ imaju eksplicitni korak kompilacije.
Ključne razlike između skriptiranja i programiranja navedene su u tablici u nastavku:
Skriptni jezik | Programski jezik |
---|---|
Temelji se na Tumaču. | Temelji se na prevoditelju. |
Koristi se za spajanje postojećih komponenti. | Koristi se za razvoj od nule. |
Pokreće se unutar programa i ovisi o njemu. | Neovisan je o nadređenom programu. |
Funkcionira za pretvaranje instrukcija visoke razine u strojni jezik. | Radi na pretvaranju cijelog programa u strojni jezik u jednom potezu. |
Ne zahtijeva kompajliranje datoteke i izravno pokretanje. | Prvo je potrebno kompajlirati datoteku. |
Nema vrstu datoteke. | Sadrži vrstu datoteke .exe. |
Ne podržava vrste podataka, grafički dizajn i dizajn korisničkog sučelja ili je podrška ograničena. | Ima bogatu podršku za grafički dizajn, vrste podataka i dizajn korisničkog sučelja. |
Korisnici ga mogu jednostavno pisati i koristiti. | Može biti teško koristiti se i pisati. |
Potreban je domaćin. | Ne treba mu host jer je samoizvršiv. |
Zahtijeva malo održavanja. | Zahtijeva visoko održavanje. |
Primjeri skriptnih jezika uključuju VB Script, JavaScript, Perl, Ruby i PHP. | Primjeri programskih jezika uključuju COBOL, Java, VB, Basic, C, C++, C# i Pascal. |