diplomski rad : skriptni programski jezici

26
Diplomski rad: Skriptni programski jezici Student: Mina Reljić 248/09 Mentor: prof. Veljko Milutinović

Upload: delila

Post on 14-Jan-2016

158 views

Category:

Documents


5 download

DESCRIPTION

Diplomski rad : Skriptni programski jezici. Student : Mina Relji ć 248 /09 Mentor : prof . Veljko Milutinovi ć. Uvod. Fundamentalna promena u pisanju programa Prelazak iz sistemskih programskih jezika u skriptne programske jezike Budu ć nost skriptnih programskih jezika. - PowerPoint PPT Presentation

TRANSCRIPT

Diplomski rad: Skriptni programski jezici

Diplomski rad:Skriptni programski jeziciStudent: Mina Relji 248/09Mentor: prof. Veljko MilutinoviUvodFundamentalna promena u pisanju programa

Prelazak iz sistemskih programskih jezikau skriptne programske jezike

Budunost skriptnih programskih jezika

2/26"Skriptni programski jezici", Mina Relji2Sistemski programski jezici Dizajnirani za: Izgradnju struktura podataka od nule Izgradnju algoritama od nuleUnapreivanje kompleksnosti programa

Na nivou najprimitivnijih raunarskih elemenataRe memorijeResursi bliski arhitekturi raunara3/26"Skriptni programski jezici", Mina ReljiSkriptni programski jeziciDizajnirani za:Povezivanje postojeih monih komponentiPojednostavljenje veza izmeu komponentiBrz razvoj aplikacija"Skriptni programski jezici", Mina Relji4/26

TrendPrimenu skriptnih jezika poveavaju:Brze maineBolji skriptni programski jeziciVeliki znaaj grafikog korisnikog interfejsaArhitektura komponentiEkspanzija Interneta"Skriptni programski jezici", Mina Relji5/26Skriptni programski jezikInterpretativni programski jezik

Veoma visok nivo apstrakcije

Podrava skripteprograme napisane za specijalno izvrno okruenje

Interpretiraju i automatizuju izvravanje zadataka

Alternativa ovek operater"Skriptni programski jezici", Mina Relji6/26Tipovi skriptnih programskih jezikaLepljivi (engl. Glue) jezici

Jezici za kontrolu poslova i ljuske

GUI skript jezici

Specifini jezici za aplikacije

Ugradivi (eng. embeddable) jezici"Skriptni programski jezici", Mina Relji7/26Lepljivi (engl. Glue) jeziciNajee skriptni programski jezikPovezuje (lepi) softverske komponentePrimer: Povezivanje baze podataka sa serveromNeki od primera:Unix shell skripte (csh, bash, sh)JavaScriptPHPPythonRuby"Skriptni programski jezici", Mina Relji8/26Jezici za kontrolu poslova i ljuskeProizali iz automatizacije kontrole poslovaPrimeri:Startovanje sistemskog programaKontrola ponaanja sistemskog programa

Naslednici IBM-ovog JCLJCL Job Control LanguageKorien u iste svrhe"Skriptni programski jezici", Mina Relji9/26GUI skript jeziciInterakcija sa grafikim korisnikim interfejsomGrafiki prozoriMenijiDugmad

Automatizacija korisnikih akcija

Zovu se jo i makroiKontrola se sprovodi putem pritiskanja dugmiaKontrola se sprovodi na akciju mia

"Skriptni programski jezici", Mina Relji10/26Specifini jezici za aplikacijeIdiomatski skriptni jezici

Skrojeni za potrebe korisnika aplikacije

Izraavanje akcija ekspertskog sistemaKompjuterske igrice (gaming okruenje)

Specifian za domen

Specijalizovan za jednu aplikaciju"Skriptni programski jezici", Mina Relji11/26Ugradivi jezici Tehniki slini jezicima za aplikacijePrenoenje vetine izmeu aplikacijaPrimena:Aplikacije koje zahtevaju brze performanseBrze funkcije prototipaKorisnik ne zna unutranje delovanjePrimeri:LuaPython"Skriptni programski jezici", Mina Relji12/26Skriptni i sistemski jeziciPrednosti skriptnih programskih jezika:Kratki i saeti programiBrzi razvojManji rizik od grekeIzostavljeno prevoenje i povezivanje programaProvere u vreme izvravanja Bogate biblioteke gotovih komponenti"Skriptni programski jezici", Mina Relji13/26Skriptni i sistemski jezici Prednosti sistemskih programskih jezika:Osiguran bolji uinak konanog kodaUpravljanje detaljima izvravanjaPogodni za raunski zahtevne funkcionalnosti

Pogodni za izradu komponentikoje e se koristiti u skriptnom jeziku

"Skriptni programski jezici", Mina Relji14/26PromenljiveSkriptni jezici tee da nemaju tipovePromenljivo i zamenljivo ponaanjePromenljive String u jednom, Integer u drugom trenutkuString orijentisani jeziciUniformna reprezentacija razliitih podatakaJezik bez tipova lake povezivanje komponenti"Skriptni programski jezici", Mina Relji15/26Greke u skriptnim jezicimaPodjednako bezbedni kao i sistemski

Detekcija greke u poslednjem trenutkuKada se neka promenljiva koristi

U sistemskom jeziku u vreme prevoenjaSistemski jezik: vie koda, manja fleksibilnost"Skriptni programski jezici", Mina Relji16/26Skript jezik Interpretirani jezikBri preokreti tokom razvojaEliminisano kompajliranje

Aplikacije sa regularnim izrazima

Manja efikasnost u odnosu na sistemskeSistemski jezik Kompajlirani jezikInterpretirani - mo i jednostavnost Kompajlirani - efikasnosti mapiranja na hardver"Skriptni programski jezici", Mina Relji17/26PoreenjeKompajliraniInterpretiraniPrednostiBrzo izvravanje programa;Korienje specifinostiarhitekture raunara;Jednostavnije debugovanjei distribucija koda;Fleksibilnije promene;Nezavisan od maine;NedostaciPred-procesiranjeprograma;Sloenost:Sloenije debug-ovanje;Sporije izvravanje;Vee optereenje memorije;Loiji stil programiranja(sloboda programera);"Skriptni programski jezici", Mina Relji18/26Prednosti i mane programa kompajliranih i interpretativnih programskih jezika

Performanse Manje aplikacije napisane skript jezikom u odnosu na onu napisanu sistemskim

Dominantan uticaj performanse komponentiKomponente implementirane sistemskim jezikom"Skriptni programski jezici", Mina Relji19/26Skrip jezik jezik visokog nivoaUdaljenost od arhitekture raunaraBez brige o memorijskom prostoruSporiji u odnosu na jezike nieg nivoaAutomatska briga o resursima Dodatno optereenje sistemaLaka implemetacijaBra implementacije > brzina izvravanjaEngl. Time to market"Skriptni programski jezici", Mina Relji20/26Poreenje na nivou apstrakcijePoreenje razliitih programskih jezika na osnovu nivoa apstrakcije. "Skriptni programski jezici", Mina Relji21/26

Stepen zadovoljstva korisnika"Skriptni programski jezici", Mina Relji22/26

Kada treba koristiti skript jezikeSpajanje postojeih programskih komponenti

este promene u aplikaciji

Prisutnost grafikog korisnikog interfejsa

Funkcije aplikacije se esto menjaju

Aplikacija je proiriva

Aplikacija manipulie Stringovima

"Skriptni programski jezici", Mina Relji23/26Kada ne treba koristiti skript jezikeKompleksni algoritmi i strukture podataka

Procesuiranje velike koliine podataka

Funkcije strogo definisane i stalne

"Skriptni programski jezici", Mina Relji24/26Zakljuak Brz razvoj aplikacija

Jednostavna sintaksa i semantikaDo etiri puta manje vremena za razvoj aplikacije u odnosu na sistemski programski jezikProduktivnost programera

Manje koda

Bri razvoj > Brzo izvravanje

"Skriptni programski jezici", Mina Relji25/26ZakljuakGlavna sila u razvoju aplikacijaUdeo na tristu rasteEkspanzija Interneta popularie korienje

Use computers less efficiently, use people more efficiently"Skriptni programski jezici", Mina Relji26/26