Student Aleksandar Stojmenović je u četvrtak, 5. maja 2022. godine odbranio svoj master rad na temu Funkcionalno reaktivno programiranje i primena u razvoju veb aplikacija pred mentorom dr Bojanom Dimić Surlom i članovima komisije dr Nemanjom Radosavljevićem i dr Milošem Radenkovićem.
U apstraktu svog rada Aleksandar je istakao:
U ovom radu prikazani su osnovni koncepti funkcionalnog i reaktivnog programiranja. Na kraju rada je predstavljena aplikacija za studentsku anketu koja primenjuje koncepte funkcionalnog i reaktivnog programianja. Aplikacija omogućava studentima da unesu ocene za predmete, profesore i studentsku službu, studenti unose ocenu od 1 do 5 za svako pitanje, nakon što se ocene unesu ažurira se tabela u realnom vremenu koja pokazuje koliko je studenata dalo određenu ocenu, koliko ima ukupno ocena i koja je prosečna ocena za odgovarajuće pitanje.
Tehnologije koje su korišćene za izradu ove aplikacije su Node.js i Express.js na backend-u, MySQL baza i na frontend-u je korišćen Angular sa RxJS bibliotekom.
…
Funkcionalno programiranje je deklarativna programska paradigma gde se programi kreiraju sastavljanjem čistih funkcija. Svaka funkcija uzima ulaznu vrednost i vrada odgovarajudi izlaz, bez promene ili uticaja stanja programa. Ove funkcije izvršavaju jednu operaciju i mogu da se sastavljaju u sekvencama da bi izvršile neki kompleksniji zadatak. Funkcionalna paradigma čini naš kod visoko modularnim, jer se funkcije mogu ponovo koristiti u programu i mogu se pozvati, proslediti kao parametri ili vratiti. Čiste funkcije se lakše razumeju jer ne menjaju nijedno stanje i zavise samo od unosa koji im je dat. Koji god izlaz da proizvedu, to je povratna vrednost koju daju. Njihova oznaka funkcije daje sve informacije o njima, odnosno njihov povratni tip i njihove argumente.
Sposobnost funkcionalnih programskih jezika da tretiraju funkcije kao vrednosti i prosleđuju ih drugim funkcijama kao parametre, čine kod čitljivijim i lako razumljivim. – zaključio je Aleksandar.
Fotografije sa odbrane dostupne su u galeriji.