1-Uvod (2)

Views:
 
Category: Entertainment
     
 

Presentation Description

programski jezici

Comments

Presentation Transcript

Programski jezici:

Programski jezici Uvod Razvoj i vrste programskih jezika

Nastava:

Nastava Sedmični fond časova: 2 + 2 Predavanja : 2 časa (ukupno 30 časova) Vanr. prof. dr Dragan Janković, dipl.inž.el. Viši asistent Mr. Snje žana Milinković , dipl.inž.el. Auditorne i laboratorijske vežbe: 2 časa (ukupno 30 časova) Viši asistent Mr. Snježana Milinković, dipl.inž.el. Asistent Ognjen Bjelica, dipl.inž.el.

Ocenjivanje:

Ocenjivanje Prisustvo nastavi – 5% Laboratorijske vežbe – 20% Uspešno odbranjene laboratorijske vežbe su uslov za polaganje ispita Zadaci – 45% Uslov za i zlazak na teoretski deo ispita je minimalno 50% ostvarenih bodova na zadacima Teorija – 30% Konačna ocena: suma bodova iz svih aktivnosti (min. 50% za prolaznu ocenu a od toga min. 50% na zadacima)

Polaganje ispita:

Polaganje ispita Dva kolokvijuma Zadaci Teorija Integralni ispit Zadaci Teorija

Literatura:

Literatura Teorija: Programski jezici , Milena Stanković Materijali u elektronskoj formi Predavanja http://www.etf.unssa.rs.ba/~snjeza Vežbe http://www.etf.unssa.rs.ba/~ognjen Auditorne vežbe Laboratorijske vežbe Ispitni zadaci

Sadržaj predmeta:

Sadržaj predmeta Razvoj i vrste programskih jezika Sintaksa programskih jezika Tipovi podataka Osnovne upravljačke strukture Strukturni tipovi podataka Dinamičke strukture podataka Potprogrami Objektno orijentisani jezici Internet i Web tehnologije

Razvoj i vrste programskih jezika:

Razvoj i vrste programskih jezika

Razvoj i vrste programskih jezika:

Razvoj i vrste programskih jezika Pojam jezika Definicija programskih jezika Klasifikacija programskih jezika po stepenu zavisnosti od računara Hronologija razvoja viših programskih jezika Podela programskih jezika prema oblasti primene Kriterijumi ocene programskih jezika Karakteristike programskih jezika

Pojam jezika:

Pojam jezika

Definicija programskih jezika:

Definicija programskih jezika

Klasifikacija programskih jezika po stepenu zavisnosti od računara:

Klasifikacija programskih jezika po stepenu zavisnosti od računara

Hronologija razvoja na osnovu prethodne klasifikacije:

Hronologija razvoja na osnovu prethodne klasifikacije Mašinski kod Heksadecimalni zapis mašinskog koda Asemblerski jezici Makroasemblerski jezici Viši programski jezici (algoritamski ili proceduralni, strukturni jezici) Problemu orijentisani programski jezici

Asembleri:

Asembleri Asemblerske naredbe – simbolički zapisane mašinske naredbe

Makroprocesori:

Makroprocesori

Kompilatori i interpretatori:

Kompilatori i interpretatori

Hibridni sistemi:

Hibridni sistemi

Hronologija razvoja viših programskih jezika:

Hronologija razvoja viših programskih jezika

Hronologija razvoja viših programskih jezika (nastavak):

Hronologija razvoja viših programskih jezika (nastavak)

FORTRAN:

FORTRAN FORmula TRANslation Prva verzija 1957. godine FORTRAN IV 1962. godine FORTRAN 77 1977. godine FORTRAN 90 1990. godine FORTRAN 95 1995. godine FORTRAN 2003 2003. godine FORTRAN 2008 2008. godine Najpogodniji jezik za razvoj naučno-tehničkih aplikacija

FORTRAN - primer:

FORTRAN - primer

COBOL:

COBOL COmmon Business Oriented Language Prva verzija 1959. godine Podržan od vodećih kompanija (IBM, Honeywell, Flow-Matic) Pogodan za razvoj poslovnih aplikacija

COBOL - primer:

COBOL - primer

ALGOL:

ALGOL ALGOrithmic Language Algol60, 1960. godine Nije doživio značajnu primenu u praksi Najznačajniji je za razvoj teorije programskih jezika Koncepti Algola prepoznatljivi su u najsavremenijim programskim jezicima

ALGOL - primer:

ALGOL - primer

BASIC:

BASIC Beginers All-purpose Symbolic Instruction Code 1961. godina Zamišljen kao jednostavnija varijanta FORTRAN-a Velika popularnost sa pojavom PC računara osamdesetih godina Danas veoma popularni VB, VB.NET

PASCAL:

PASCAL Početak sedamdesetih godina Zamišljen kao jednostavan jezik za obuku kadrova i učenje metodologije programiranja Korijeni u jeziku Algol60 Jako značajan za prihvatanje ideje strukturnog programiranja

PASCAL - primer:

PASCAL - primer

ADA:

ADA Nastaje osamdesetih godina Podrška američkog ministarstva odbrane Projektovan sa idejom da preuzme primat Nije doživio predviđenu praktičnu primjenu Jako značajan za teoriju programskih jezika Model jezika na osnovu koga se danas postavljaju svi značajniji koncepti programskih jezika Najbolje zadovoljava potrebe nastave iz programskih jezika

ADA - primjer:

ADA - primjer

Programski jezik C:

Programski jezik C Nastaje 1970. godine Jezik za razvoj UNIX-a ANSI C Sprega sa hardverom Pogodan za razvoj komponenti sistemskog softvera i u drugim primenama gde je potrebna sprega sa resursima sistema Objektna nadgradnja C++, C#

C - primer:

C - primer

SMALLTALK:

SMALLTALK Prvi potpuno objektno-orijentisan jezik Smalltalk-80 Koreni objektnih jezika u jeziku Simula 67 Današnji savremeni jezici su skoro svi objektno-orijentisani Kombinacija objektnog i vizuelnog programiranja Event Driven Programming Visual Basic, Visual C++, Java, C#

SMALLTALK - primer:

SMALLTALK - primer

Microsoft Visual Studio:

Microsoft Visual Studio

Jezici u oblasti veštačke inteligencije:

Jezici u oblasti veštačke inteligencije LISP - LISt Processing Prva verzija 1958. godine PROLOG – PROgramming LOGic Nastaje sedamdesetih godina

LISP - primer:

LISP - primer

Podela programskih jezika prema oblasti primene:

Podela programskih jezika prema oblasti primene Jezici za naučne aplikacije Jezici za poslovne aplikacije Jezici veštačke inteligencije Jezici za razvoj sistemskog softvera Jezici za računarske komunikacije Jezici specijalne namene

Kriterijumi ocene programskih jezika:

Kriterijumi ocene programskih jezika Čitljivost Jednostavnost Ortogonalnost Upravljačke strukture Strukture podataka Sintaksa Jednostavnost pisanja programa Jednostavnost i ortogonalnost Podrška apstrakciji podataka Izražajnost

Kriterijumi ocene programskih jezika:

Kriterijumi ocene programskih jezika Pouzdanost jezika Tipovi podataka Obrada izuzetaka Pseudonimi (aliasing) Efikasnost jezika Efikasnost programa napisanog na određenom programskom jeziku Efikasnost kompilatora Efikasnost razvojnog okruženja (svi potrebni alati za brzi razvoj aplikacija)

Karakteristike programskih jezika:

Karakteristike programskih jezika Formalno definisana sintaksa programskog jezika Jaki tipovi podataka Strukturni tipovi podataka Upravljačke strukture Potprogrami Moduli Mehanizmi za konkurentno programiranje Mehanizmi niskog nivoa Mehanizmi za obradu grešaka Standardni skup U/I procedura

Pitanja:

Pitanja ???

Pitanja - ponavljanje:

Pitanja - ponavljanje Šta je programski jezik? Kako se vrši klasifikacija programskih jezika po stepenu zavisnosti od računara? Nabrojati klase mašinski zavisnih jezika. Nabrojati klase mašinski nezavisnih jezika. Šta je kompilator? Šta je interpretator? Šta je asembler? Šta je makroprocesor? Koji programski jezik je najpogodniji za razvoj naučno-tehničkih aplikacija? Koji programski jezik se smatra najvažnijim za prihvatanje ideje strukturnog programiranja? Koji programski jezik se smatra prvim potpuno objektno orijentisanim jezikom? U kojim oblastima je pogodno koristiti programski jezik C?