DIZAJN PROGRAMSKIH JEZIKA

Kurs dizajn programskih jezika je obavezan kurs na trećoj godini R smera. U okviru kursa se proučavaju različite karakteristike programskih jezika i stilova programiranja:

  • Skript programiranje kroz Python
  • Programiranje ograničenja kroz Python constraint
  • Komponentno programiranje kroz PyQt (prethodnih godina rađena biblioteka JavaFX)
  • Konkurentno programiranje i odgovarajući mehanizmi konkurentnog programiranja kroz GO (prethodnih godina rađena Java)
  • Generičko programiranje kroz C++
U okviru studija postoje i drugi kursevi koji se bave bliskim temama.

Predmetni nastavnik:

Asistent:

Obavezni predmet

  • 5 ESPB bodova
  • 2 časa predavanja
  • 2 časa vežbi

Predispitne obaveze (45 poena):

  • teorija: 20 poena
  • zadaci: 25 poena

Završni ispit (55 poena):

  • teorija: 25 poena
  • zadaci: 30 poena
Na ispitu se istovremeno rade i teorija i zadaci. Da bi položio ispit, student treba da ostvari najmanje 51 poen, od čega najmanje 40% na teoriji (18 poena) i najmanje 40% na zadacima (22 poena) i na završnom ispitu minimum 30% na praktičnom delu, od čega minimum 15% na C++u i minimum 15% na GO.

Programski jezici - uvod

Skript programiranje, programiranje ograničenja

Konkurentno programiranje

Parametarski polimorfizam

  • Parametarski polimorfizam. Generičko programiranje kroz C++.
    Slajdovi. Tekst.

Svojstva programskih jezika

Dodatni materijali

  • Dodatni materijali za učenje se mogu naći ovde.

ČAS 1

ČAS 2

ČAS 3

  • Python: argumenti komandne linije, obilazak direktorijuma, sortiranje.
  • Pandas i Matplotlib biblioteke.
    [Zadaci] [Rešenja]

Literatura za predavanja

  • Materijali i slajdovi sa predavanja i vežbi
  • R. Sebesta: "Concepts of programming languages", Addison Wesley, (10. ed.), 2012.
  • A. Tucker and R. Noonan: "Programming Languages: Principles and Paradigms", McGraw-Hill Science, 2001.
  • P. Van Roy, S. Haridi: "Concepts, Techniques, and Models of Computer Programming", MIT Press, 2003.

Literatura za vežbe

Dodatno

Spisak programa potrebnih za kurs

  • Python 3.6
  • Python biblioteke: pandas, numpy, matplotlib, PyQt5, python-constraint
  • G++
  • Visual Studi Code (preporuka, može se koristiti i neki drugi editor)

Primeri

Početak nove školske godine

Svim studentima želimo lep i uspešan početak školske 2019/20. godine!

27.9.2019.

Rezultati ispita - Septembar 1

Ukupne rezultate ispita možete videti ovde. Poeni su uneti i u Hipatiju (obavezno prijaviti ako primetite neko neslaganje). Za uvid u teorijski deo javiti se profesorki elektronskim putem, a za praktičuni deo ispita javiti se asistentkinji elektronskim putem. Termin upisa ocena: sreda 25. 09. u 17:45 (kabinet 716) ili u 18:30 (u učionici u kojoj ce biti održan ispit iz MSNR-a).

13.09.2019.

Matematički fakultet, Univerzitet u Beogradu
školska 2019/20. godina