Download - Programski jezici
![Page 1: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/1.jpg)
Programski jeziciProgramski jezici
UvodUvod
Razvoj i vrste programskih Razvoj i vrste programskih jezikajezika
![Page 2: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/2.jpg)
NastavaNastava Sedmični fond časova: 2 + 2Sedmični fond časova: 2 + 2
PredavanjaPredavanja:: 2 2 časa (ukupno 30 časova)časa (ukupno 30 časova) Vanr. prof. dr Dragan Janković, dipl.inž.el.Vanr. prof. dr Dragan Janković, dipl.inž.el. Viši asistent Mr. Viši asistent Mr. SnjeSnježana Milinkovićžana Milinković, dipl.inž.el., dipl.inž.el.
Auditorne i laboratorijske vežbe: 2 časa Auditorne i laboratorijske vežbe: 2 časa (ukupno 30 časova)(ukupno 30 časova) Viši asistent Mr. Snježana Milinković, dipl.inž.el.Viši asistent Mr. Snježana Milinković, dipl.inž.el. Asistent Ognjen Bjelica, Asistent Ognjen Bjelica, dipl.inž.el.dipl.inž.el.
![Page 3: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/3.jpg)
OcenjivanjeOcenjivanje Prisustvo nastavi – 5%Prisustvo nastavi – 5% Laboratorijske vežbe – 20%Laboratorijske vežbe – 20%
Uspešno odbranjene laboratorijske vežbe Uspešno odbranjene laboratorijske vežbe su uslov za polaganje ispitasu uslov za polaganje ispita
Zadaci – 45%Zadaci – 45% Uslov za iUslov za izlazak na teoretski deo ispita je zlazak na teoretski deo ispita je
minimalno 50% ostvarenih bodova na minimalno 50% ostvarenih bodova na zadacimazadacima
Teorija – 30%Teorija – 30% Konačna ocena: suma bodova iz svih Konačna ocena: suma bodova iz svih
aktivnosti (min. 50% za prolaznu ocenu aktivnosti (min. 50% za prolaznu ocenu a od toga min. 50% na zadacima)a od toga min. 50% na zadacima)
![Page 4: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/4.jpg)
Polaganje ispitaPolaganje ispita
Dva kolokvijumaDva kolokvijuma ZadaciZadaci TeorijaTeorija
Integralni ispitIntegralni ispit ZadaciZadaci TeorijaTeorija
![Page 5: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/5.jpg)
LiteraturaLiteratura
Teorija: Teorija: Programski jeziciProgramski jezici, , Milena Milena StankovićStanković
Materijali u elektronskoj formi Materijali u elektronskoj formi PredavanjaPredavanja
http://www.etf.unssa.rs.ba/~snjeza VežbeVežbe
http://www.etf.unssa.rs.ba/~ognjen Auditorne vežbeAuditorne vežbe Laboratorijske vežbeLaboratorijske vežbe Ispitni zadaciIspitni zadaci
![Page 6: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/6.jpg)
Sadržaj predmetaSadržaj predmeta Razvoj i vrste programskih jezikaRazvoj i vrste programskih jezika Sintaksa programskih jezikaSintaksa programskih jezika Tipovi podatakaTipovi podataka Osnovne upravljačke struktureOsnovne upravljačke strukture Strukturni tipovi podatakaStrukturni tipovi podataka Dinamičke strukture podatakaDinamičke strukture podataka PotprogramiPotprogrami Objektno orijentisani jeziciObjektno orijentisani jezici Internet i Web tehnologijeInternet i Web tehnologije
![Page 7: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/7.jpg)
Razvoj i vrste Razvoj i vrste programskih programskih
jezikajezika
![Page 8: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/8.jpg)
Razvoj i vrste Razvoj i vrste programskih jezikaprogramskih jezika
Pojam jezikaPojam jezika Definicija programskih jezikaDefinicija programskih jezika Klasifikacija programskih jezika po Klasifikacija programskih jezika po
stepenu zavisnosti od računarastepenu zavisnosti od računara Hronologija razvoja viših Hronologija razvoja viših
programskih jezikaprogramskih jezika Podela programskih jezika prema Podela programskih jezika prema
oblasti primeneoblasti primene Kriterijumi ocene programskih jezikaKriterijumi ocene programskih jezika Karakteristike programskih jezikaKarakteristike programskih jezika
![Page 9: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/9.jpg)
Pojam jezikaPojam jezika
![Page 10: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/10.jpg)
Definicija programskih Definicija programskih jezikajezika
![Page 11: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/11.jpg)
Klasifikacija programskih Klasifikacija programskih jezika po stepenu zavisnosti jezika po stepenu zavisnosti
od računaraod računara
![Page 12: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/12.jpg)
Hronologija razvoja na Hronologija razvoja na osnovu prethodne osnovu prethodne
klasifikacijeklasifikacije Mašinski kodMašinski kod Heksadecimalni zapis mašinskog kodaHeksadecimalni zapis mašinskog koda Asemblerski jeziciAsemblerski jezici Makroasemblerski jeziciMakroasemblerski jezici Viši programski jezici (algoritamski ili Viši programski jezici (algoritamski ili
proceduralni, strukturni jezici)proceduralni, strukturni jezici) Problemu orijentisani programski Problemu orijentisani programski
jezicijezici
![Page 13: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/13.jpg)
AsembleriAsembleri
Asemblerske naredbe – simbolički Asemblerske naredbe – simbolički zapisane mašinske naredbezapisane mašinske naredbe
![Page 14: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/14.jpg)
MakroprocesoriMakroprocesori
![Page 15: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/15.jpg)
Kompilatori i Kompilatori i interpretatoriinterpretatori
![Page 16: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/16.jpg)
Hibridni sistemiHibridni sistemi
![Page 17: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/17.jpg)
Hronologija razvoja viših Hronologija razvoja viših programskih jezikaprogramskih jezika
![Page 18: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/18.jpg)
Hronologija razvoja viših Hronologija razvoja viših programskih jezika programskih jezika
(nastavak)(nastavak)
![Page 19: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/19.jpg)
FORTRANFORTRAN
FORmula TRANslationFORmula TRANslation Prva verzija 1957. godinePrva verzija 1957. godine FORTRAN IV 1962. godineFORTRAN IV 1962. godine FORTRAN 77 1977. godineFORTRAN 77 1977. godine FORTRAN 90 1990. godineFORTRAN 90 1990. godine FORTRAN 95 1995. godineFORTRAN 95 1995. godine FORTRAN 2003 2003. godineFORTRAN 2003 2003. godine FORTRAN 2008 2008. godineFORTRAN 2008 2008. godine Najpogodniji jezik za razvoj naučno-Najpogodniji jezik za razvoj naučno-
tehničkih aplikacijatehničkih aplikacija
![Page 20: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/20.jpg)
FORTRAN - primerFORTRAN - primer
![Page 21: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/21.jpg)
COBOLCOBOL
COmmon Business Oriented COmmon Business Oriented LanguageLanguage
Prva verzija 1959. godinePrva verzija 1959. godine Podržan od vodećih kompanija (IBM, Podržan od vodećih kompanija (IBM,
Honeywell, Flow-Matic)Honeywell, Flow-Matic) Pogodan za razvoj poslovnih Pogodan za razvoj poslovnih
aplikacijaaplikacija
![Page 22: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/22.jpg)
COBOL - primerCOBOL - primer
![Page 23: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/23.jpg)
ALGOLALGOL
ALGOrithmic LanguageALGOrithmic Language Algol60, 1960. godineAlgol60, 1960. godine Nije doživio značajnu primenu u Nije doživio značajnu primenu u
praksipraksi Najznačajniji je za razvoj teorije Najznačajniji je za razvoj teorije
programskih jezikaprogramskih jezika Koncepti Algola prepoznatljivi su u Koncepti Algola prepoznatljivi su u
najsavremenijim programskim najsavremenijim programskim jezicimajezicima
![Page 24: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/24.jpg)
ALGOL - primerALGOL - primer
![Page 25: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/25.jpg)
BASICBASIC
Beginers All-purpose Symbolic Beginers All-purpose Symbolic Instruction CodeInstruction Code
1961. godina1961. godina Zamišljen kao jednostavnija Zamišljen kao jednostavnija
varijanta FORTRAN-avarijanta FORTRAN-a Velika popularnost sa pojavom PC Velika popularnost sa pojavom PC
računara osamdesetih godinaračunara osamdesetih godina Danas veoma popularni VB, VB.NETDanas veoma popularni VB, VB.NET
![Page 26: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/26.jpg)
PASCALPASCAL
Početak sedamdesetih godinaPočetak sedamdesetih godina Zamišljen kao jednostavan jezik za Zamišljen kao jednostavan jezik za
obuku kadrova i učenje metodologije obuku kadrova i učenje metodologije programiranjaprogramiranja
Korijeni u jeziku Algol60Korijeni u jeziku Algol60 Jako značajan za prihvatanje ideje Jako značajan za prihvatanje ideje
strukturnog programiranjastrukturnog programiranja
![Page 27: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/27.jpg)
PASCAL - primerPASCAL - primer
![Page 28: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/28.jpg)
ADAADA Nastaje osamdesetih godinaNastaje osamdesetih godina Podrška američkog ministarstva odbranePodrška američkog ministarstva odbrane Projektovan sa idejom da preuzme primatProjektovan sa idejom da preuzme primat Nije doživio predviđenu praktičnu Nije doživio predviđenu praktičnu
primjenuprimjenu Jako značajan za teoriju programskih Jako značajan za teoriju programskih
jezikajezika Model jezika na osnovu koga se danas Model jezika na osnovu koga se danas
postavljaju svi značajniji koncepti postavljaju svi značajniji koncepti programskih jezikaprogramskih jezika
Najbolje zadovoljava potrebe nastave iz Najbolje zadovoljava potrebe nastave iz programskih jezikaprogramskih jezika
![Page 29: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/29.jpg)
ADA - primjerADA - primjer
![Page 30: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/30.jpg)
Programski jezik CProgramski jezik C
Nastaje 1970. godineNastaje 1970. godine Jezik za razvoj UNIX-aJezik za razvoj UNIX-a ANSI CANSI C Sprega sa hardveromSprega sa hardverom Pogodan za razvoj komponenti Pogodan za razvoj komponenti
sistemskog softvera i u drugim sistemskog softvera i u drugim primenama gde je potrebna sprega sa primenama gde je potrebna sprega sa resursima sistemaresursima sistema
Objektna nadgradnja C++, Objektna nadgradnja C++, C#C#
![Page 31: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/31.jpg)
C - primerC - primer
![Page 32: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/32.jpg)
SMALLTALKSMALLTALK
Prvi potpuno objektno-orijentisan jezik Prvi potpuno objektno-orijentisan jezik Smalltalk-80Smalltalk-80
Koreni objektnih jezika u jeziku Simula Koreni objektnih jezika u jeziku Simula 6767
Današnji savremeni jezici su skoro svi Današnji savremeni jezici su skoro svi objektno-orijentisaniobjektno-orijentisani
Kombinacija objektnog i vizuelnog Kombinacija objektnog i vizuelnog programiranjaprogramiranja
Event Driven ProgrammingEvent Driven Programming Visual Basic, Visual C++, Java, C#Visual Basic, Visual C++, Java, C#
![Page 33: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/33.jpg)
SMALLTALK - primerSMALLTALK - primer
![Page 34: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/34.jpg)
Microsoft Visual StudioMicrosoft Visual Studio
![Page 35: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/35.jpg)
Jezici u oblasti veštačke Jezici u oblasti veštačke inteligencijeinteligencije
LISP - LISt ProcessingLISP - LISt Processing Prva verzija 1958. godinePrva verzija 1958. godine
PROLOG – PROgramming LOGicPROLOG – PROgramming LOGic Nastaje sedamdesetih godinaNastaje sedamdesetih godina
![Page 36: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/36.jpg)
LISP - primerLISP - primer
![Page 37: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/37.jpg)
Podela programskih jezika Podela programskih jezika prema oblasti primeneprema oblasti primene
Jezici za naučne aplikacijeJezici za naučne aplikacije Jezici za poslovne aplikacijeJezici za poslovne aplikacije Jezici veštačke inteligencijeJezici veštačke inteligencije Jezici za razvoj sistemskog softveraJezici za razvoj sistemskog softvera Jezici za računarske komunikacijeJezici za računarske komunikacije Jezici specijalne nameneJezici specijalne namene
![Page 38: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/38.jpg)
Kriterijumi ocene Kriterijumi ocene programskih jezikaprogramskih jezika
ČitljivostČitljivost JednostavnostJednostavnost OrtogonalnostOrtogonalnost Upravljačke struktureUpravljačke strukture Strukture podatakaStrukture podataka SintaksaSintaksa
Jednostavnost pisanja programaJednostavnost pisanja programa Jednostavnost i ortogonalnostJednostavnost i ortogonalnost Podrška apstrakciji podatakaPodrška apstrakciji podataka IzražajnostIzražajnost
![Page 39: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/39.jpg)
Kriterijumi ocene Kriterijumi ocene programskih jezikaprogramskih jezika
Pouzdanost jezikaPouzdanost jezika Tipovi podatakaTipovi podataka Obrada izuzetakaObrada izuzetaka Pseudonimi (aliasing)Pseudonimi (aliasing)
Efikasnost jezikaEfikasnost jezika Efikasnost programa napisanog na Efikasnost programa napisanog na
određenom programskom jezikuodređenom programskom jeziku Efikasnost kompilatoraEfikasnost kompilatora Efikasnost razvojnog okruženja (svi Efikasnost razvojnog okruženja (svi
potrebni alati za brzi razvoj aplikacija)potrebni alati za brzi razvoj aplikacija)
![Page 40: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/40.jpg)
Karakteristike Karakteristike programskih jezikaprogramskih jezika
Formalno definisana sintaksa Formalno definisana sintaksa programskog jezikaprogramskog jezika
Jaki tipovi podatakaJaki tipovi podataka Strukturni tipovi podatakaStrukturni tipovi podataka Upravljačke struktureUpravljačke strukture PotprogramiPotprogrami ModuliModuli Mehanizmi za konkurentno programiranjeMehanizmi za konkurentno programiranje Mehanizmi niskog nivoaMehanizmi niskog nivoa Mehanizmi za obradu grešakaMehanizmi za obradu grešaka Standardni skup U/I proceduraStandardni skup U/I procedura
![Page 41: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/41.jpg)
PitanjaPitanja
??????
![Page 42: Programski jezici](https://reader036.vdocuments.pub/reader036/viewer/2022081420/568134a5550346895d9bacfc/html5/thumbnails/42.jpg)
Pitanja - ponavljanjePitanja - ponavljanje Šta je programski jezik?Šta je programski jezik? Kako se vrši klasifikacija programskih jezika po stepenu Kako se vrši klasifikacija programskih jezika po stepenu
zavisnosti od računara?zavisnosti od računara? Nabrojati klase mašinski zavisnih jezika.Nabrojati klase mašinski zavisnih jezika. Nabrojati klase mašinski nezavisnih jezika.Nabrojati klase mašinski nezavisnih jezika. Šta je kompilator?Šta je kompilator? Šta je interpretator?Šta je interpretator? Šta je asembler?Šta je asembler? Šta je makroprocesor?Šta je makroprocesor? Koji programski jezik je najpogodniji za razvoj naučno-Koji programski jezik je najpogodniji za razvoj naučno-
tehničkih aplikacija?tehničkih aplikacija? Koji programski jezik se smatra najvažnijim za prihvatanje Koji programski jezik se smatra najvažnijim za prihvatanje
ideje strukturnog programiranja?ideje strukturnog programiranja? Koji programski jezik se smatra prvim potpuno objektno Koji programski jezik se smatra prvim potpuno objektno
orijentisanim jezikom?orijentisanim jezikom? U kojim oblastima je pogodno koristiti programski jezik C?U kojim oblastima je pogodno koristiti programski jezik C?