PROGRAMSKI JEZICI

Ova stranica posvećena je kursevima u okviru kojih se izučavaju različite programske paradigme i njihovi predstavnici:

  • imperativno programiranje - istorijski razvoj, osnovne karakteristike i mogućnosti različitih imperativnih jezika (programski jezik C se izučava detaljno u okviru kurseva Programiranje 1 i Programiranje 2)
  • objektno-orijentisano programiranje - osnovni koncepti objektno orijentisanog programiranja (teorijske osnove, programski jezik Java i objektno orijentisano programiranje uče se detaljnije u okviru kursa Objektno-orijentisano programiranje)
  • funkcionalno programiranje - teorijske osnove (lambda račun), programski jezik Haskell
  • logičko programiranje - teorijske osnove (logika prvog reda), programski jezik Prolog
  • komponentno programiranje - praktični pristup kroz programski jezik Java i bibliteku JavaFX, odnosno Scala i bibliteku ScalaFX
  • konkurentno i distribuirano programiranje - teorijske osnove i praktični pristup kroz programski jezik Java, odnosno Scala
  • programiranje ograničenja - teorijske osnove i praktični pristup kroz BProlog i Python (biblioteka constraint)
  • skript programiranje - teorijske osnove i praktični pristup kroz Python
  • generičko programiranje - teorijske osnove i praktični pristup kroz programski jezik C++
Takođe, u okviru kurseva izučavaju se i osnovna svojstva programskih jezika.

Kursevi

Nastavnik: doc dr Milena Vujošević Janičić
Asistenti: Marjana Šolajić i Branislava Živković

U okviru kurseva programskih jezika organizuju se gostujuća predavanja koja imaju za cilj da približe studentima primenu naučenih koncepata u industriji, a drže ih stručnjaci iz IT sveta. Do sada su organizovana sledeća gostujuća predavanja:

  • Razvoj MScript programskog jezika, Mad Head Games (kurs PPI maj 2015. i decembar 2015., kurs DPJ i PPR decembar 2016)
  • Skript programiranje: programski jezik Lua, RTRK (kurs DPJ, decembar 2015. i decembar 2016)
  • Funkcionalno programiranje u programskom jeziku Skala, Zuhlke Engineering d.o.o. (kurs PPR, maj 2016. i mart 2017)
  • Reaktivno programiranje, Endava (kurs PPR i PPI, mart 2017)
  • Sistemi u realnom vremenu i programski jezik Ada, Endava (kurs PPR i PPI, april 2017)

Seminarski rad nije obavezan. Studenti koji ne budu radili seminarski rad i dalje imaju mogućnost da osvoje 100 poena na kursu i da dobiju najvišu ocenu.

Seminarski rad se radi u timu. Tim može da sadrži najviše tri člana. Svaki član tima može dobiti najviše 10 poena.

Cilj: Savladati sadržaj koji nije obuhvaćen kursevima na studijama - dakle proširiti znanje i dobiti praktično iskustvo.

Seminarski radovi se javno brane na kraju semestra. Odbrana seminarskog rada obuhvata kratko predstavljanje teme i zadatka seminarskog rada, zatim predstavljanje korišćenih tehnologija i rešenja, i demonstraciju rada napisanog programa uz neke izmene i prevođenje i pokretanje u toku odbrane. Odbrana je javna i njoj mogu prisustvovati svi studenti. Odbrana može da bude praćena slajdovima.

Seminarski radovi, 2017. godina

  • jezik: Python, naziv: Pyraminix, studenti: Tamara Marčetić i Maja Stojković, rad
  • jezik: Python, naziv: Multitasking igrica, studenti: Vladimir Đošović i David Marjanović, rad
  • jezik: Scala, naziv: Potera, studenti: Katarina Đurić, Lazar Mladenović i Tatjana Damnjanović, rad
  • jezik: Scala, naziv: Gladne zeke, studenti: Ivona Jurošević i Aleksandar Mužina, rad
  • jezik: Scala, naziv: Kviz, studenti: Marko Mladenović, Andrijana Čakarević i Nikola Rajković, rad
  • jezik: Lua, naziv: Whey invasion, studenti: Katarina Živković i Lazar Nisić, rad
  • jezik: C++, naziv: Implementacija balansiranih AVL stabala, studenti: Milan Čugurović i Ivan Drecun, rad
  • jezik: Python, naziv: Maze-pathfinder, studenti: Milana Kovačević i Ivan Ristović, rad
  • jezik: Python, naziv: Escape room, studenti: Ana Bajić, Strahinja Stanojević i Tomislav Milovanović, rad
  • jezik: Python, naziv: PMK, student: Miljan Kolčić, rad
  • jezik: Ruby, naziv: Sticky notes, studenti: Dušan Pilipović i Vido Mladenović, rad
  • jezik: Ruby, naziv: RX ball, studenti: Nikola Dimić i Dragana Dimitrijević, rad
  • jezik: Lua, naziv: 5 in a row, studenti: Srđan Lazarević i Ana Košutić, rad
  • jezik: Lua, naziv: Defense of the burek, studenti: Nikola Dimitrijević, Luka Živanović i Božidar Antić, rad
  • jezik: Blueprint (Unreal Engine), naziv: Balansero, studenti: Rastko Đorđević, Marijana Tanović i Bojan Vasiljević, rad
  • student: Uroš Gojković, jezik: Clojure, rad
  • student: Slavko Djuričin, jezik: OCaml, rad
  • student: Miroslav Mišljenović, jezik: GO, rad
  • student: Nemanja Majstorović, jezik: ML, rad
  • student: Djordje Andjelković, jezik: Julia, rad
Seminarski radovi, 2016. godina
  • naziv: Sovice, studenti: Stanko Grujić i Željko Grujić, rad
  • naziv: Mravi, studenti: Strahinja Milojević, Miloš Arsić i Jovana Đoković, rad
  • naziv: HopOp, studenti: Uroš Poznan i Jelena Kitanović, rad
  • naziv: Avioni, studenti: Miloš Lončarević i Filip Miljaković, rad
  • naziv: Banka, studenti: Kristina Gavrilović, Milena Dukanac, Uroš Poznan i Jelena Kitanović, rad
  • naziv: DNK, student: Anđela Mijajlović, rad
Seminarski radovi, 2015. godina
  • naziv: PewPew, studenti: Jelena Simović i Nikola Grulović, rad
  • naziv: Multithreading, student: Nikola Premčevski, rad
  • naziv: Sunčev sistem, student: Vojislav Stanković, rad
  • naziv: Pametne utičnice, student: Pavle Pavlov, rad
  • naziv: Kviz, student: Una Stanković, rad
  • naziv: Kviz, student: Kristina Stanojević, rad
  • naziv: Kombinatori, studenti: Vlado Skoko i Nikola Ajzenhamer, rad
  • naziv: Aurora, studenti: Nemanja Mićović i Lazar Ranković, rad
  • naziv: RGB LED, student: Đorđe Milićević, rad
  • naziv: Super Mario, studenti: David Ivić i Saša Cvetković, rad
  • naziv: Moj broj, student: Željka Živanović, rad
  • naziv: Moj broj, studenti: Isidora Đurđević i Daniel Doža, rad
  • naziv: Nim, student: Anja Bukurov, rad
Matematički fakultet, Univerzitet u Beogradu
školska 2016/17. godina