Функционално програмирање Шифра: ОN0024 | 6 ЕСПБ

Опште информације
Ниво студија:
Година студија: 3
Семестар/Триместар: 6
Услов: Нема.
Циљ: Основни циљ предмета је да се код студента развије приступ за разумевање и решавање програмерских задатака из функционалног програмирања.
Исход: Студент ће бити оспособљен да практично користи програмске језике Python и LISP за решавање програмерских задатака коришћењем функционалног програмирања.
Садржај предмета
Теоријска настава:
  1. Python: Синтакса, типови променљивих, основни оператори. Модули. Функционални приступ.
  2. Стратегије управљања. Модул math.
  3. Петље, стрингови, листе, н-торке, речници. Модул random.
  4. Mодул datetime. Модул calendar. Модул os.
  5. Класе, објекти, декоратори.
  6. Регуларни изрази. Модул re.
  7. Приступ базама података. Modul pymysql. Модул sqlite3.
  8. CGI. Модул cgi.
  9. Умрежавање. Модул socket. Слање електронске поште. Модул smtplib.
  10. Конкурентно програмирање. Модул threading.
  11. Модул json. GUI: модул tkinter. Веб модул: модул flask.
  12. Мапе, филтери, редукције, ламбда.
  13. Библиотеке: itertools, functools. Енкапсулација, компактни код.
  14. Генератори, речници и скупови, рекурзије.
  15. Модул pygame.
Практична настава:
  1. Jack Widman, Naučite funkcionalno programiranje, CET Beograd, 2023.
  2. Eric Normand, Otkrivanje jednostavnosti: Funkcionalno programiranje, Kompjuter biblioteka, Beograd, 2021.
  3. Bill Lubanovic, Uvod u Python, Mikro knjiga, 2015.
  4. Steven Lott: Functional Python Programming, Packt Publishing, 2015.
  5. Daniel Gaspar, Jack Stouffer,Mastering Flask Web Development, Packt Publishing, 2018.
Литература
Број часова активне наставе (недељно)
Предавања: 3
Вежбе: 2
Други облици наставе: 0
Оцена знања (максималан број поена 100)
Предиспитне обавезе
Поени
активности у току предавања
10
активности на лабораторијским вежбама
20
семинарски рад
0
колоквијум
40
Завршни испит
Поени
Писмени испит
30
Усмени испит
0