Programska potpora komunikacijskim sustavima

Prikazani su podaci za akademsku godinu: 2023./2024.

Predavanja

Laboratorijske vježbe

Opis predmeta

Programski jezici za web programiranja (npr. HTML5, Java Script, PHP, CSS). Asinhroni Web u stvarnom vremenu, razmjeran rast Weba i kvaliteta usluge, REST arhitekturalni stil, RESTful API oblikovanje, HTTP, AJAX i protokol websocket, Semantički web, Mikroservisi. Priključak i utičnica, programsko sučelje aplikacijske utičnice (API). Korisnički poslužitelj datagram protokola (UDP) i klijent. Poslužitelj i klijent protokola za kontrolu prijenosa (TCP). Protokol prijenosa hiperteksta (HTTP) i protokol za prijenos datoteka (FTP). Primjeri mrežnog programiranja u programskim jezicima Java i Python. Oblikovanje osnovnih funkcija DBMS-a. Oblikovanje relacijske baze podataka. Sučelje aplikacijskog programiranja za relacijske baze podataka, objektno-relacijska preslikavanja. Programski jezik SQL (definicija podataka, formulacija upita, ograničenja, integritet), selekcije, projekcije, složeni upiti, agregiranje i grupiranje.

Studijski programi

Sveučilišni diplomski
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Jezgreni predmeti profila (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)
Izborni predmeti (2. semestar)

Ishodi učenja

  1. objasniti načela rada asinkronog Weba u stvarnom vremenu
  2. analizirati načela izgradnje RESTful API Web sustava
  3. analizirati primjenjivost UDP i TCP protokola za oblikovanje pojedinih vrsta aplikacija
  4. objasniti osnovne funkcije DMBS sustava i načela oblikovanja relacijske baze podataka
  5. analizirati aplikacijska programska sučelja za operacije nad relacijskim bazama podataka u različitim programskim jezicima
  6. analizirati računalnu složenost i vrijeme izvođenja različitih upita u programskom jeziku SQL

Oblici nastave

Predavanja

Nastava na predmetu organizirana je u dva nastavna ciklusa. Prvi nastavni ciklus sastoji se od 7 tjedana nastave i međuispita dok drugi ciklus sadrži 6 tjedana nastave i završni ispit. Nastava se provodi kroz 15 tjedana s tjednim opterećenjem od 2 školska sata.

Laboratorij

Studenti samostalno rješavaju odabrane praktične zadatke za laboratorijske vježbe.

Način ocjenjivanja

Kontinuirana nastava Ispitni rok
Vrsta provjere Prag Udio u ocjeni Prag Udio u ocjeni
Laboratorijske vježbe 50 % 30 % 0 % 30 %
Međuispit: Pismeni 0 % 35 % 0 %
Završni ispit: Pismeni 0 % 35 %
Ispit: Pismeni 0 % 70 %
Napomena / komentar

Uvjeti za prolaz kroz kontinuiranu nastavu: Provjere znanja 35 / 70 bodova (50%) Laboratorijske vježbe 15 / 30 bodova (50%)

Tjedni plan nastave

  1. Programski jezici za izradu web-aplikacija (npr. HTML5. Javascript. PHP. CSS), Ograničenja web-platformi, Arhitekture i protokoli weba
  2. Web-standardi, Web-usluge za krajnjeg korisnika i za programski pristup, Programska potpora u obliku usluge
  3. Asinkroni web i web za usluge u stvarnom vremenu, Svojstvo razmjernog rasta i kvaliteta usluga na webu, Arhitekturni stil REST
  4. Oblikovanje programskog sučelja prema načelima arhitekturnog stila REST, Protokoli HTTP. AJAX i Websocket, Semantički web, Mikrousluge
  5. """Port"" i ""socket"". Aplikacijsko programsko sučelje: Socket (API). Naziv i adresa", """User Datagram Protocol"" (UDP): poslužitelj i klijent. Aplikacijski protokoli temeljeni na protokolu UDP"
  6. """Transmission Control Protocol ""(TCP): poslužitelj i klijent. Konkurentnost. Aplikacijski protokoli temeljeni na protokolu TCP. ""Hypertext Transfer Protocol"" (HTTP) i ""File Transfer Protocol"" (FTP). Jednostavni HTTP poslužitelj", "Opcije sučelja ""Socket"". Sučelje ""Raw""", "Demoni i super-server ""inetd""", "Multipleksiranje ulazno izlaznih operacija. Dretve", "Sve odredišno i više odredišno adresiranje i aplikacije"
  7. "Aplikacije temeljene na protokolu SCTP (""Stream Control Transmission Protocol"")", "Sigurnosna pitanja i smjernice za programiranje", "Primjeri mrežnog programiranja u Javi i Pythonu"
  8. Međuispit
  9. (en) Design of core DBMS functions (e.g., query mechanisms, transaction management, buffer management, access methods), Arhitektura baza i nezavisnost podataka, Sigurnost u bazama podataka
  10. Načela modeliranja podataka, Konceptualni modeli (ER modeli. UML dijagrami), Tablični modeli, Relacijski model podataka, Dimenzijski model, Modeli ključ-vrijednost. graf. zajednica stupaca. dokument, Objektno orijentirani model podataka, Polustrukturirani model (izražen kao XML. XML schema. JSON), Oblikovanje prostornih i vremenskih podataka, Oblikovanje podataka u semantičkom webu (RDF. OWL)
  11. Preslikavanje konceptualnog modela u relacijski model, Entitet i integritet stranog ključa, Relacijska algebra i relacijski predikatni račun, Oblikovanje relacijske baze podataka, Funkcijske ovisnosti
  12. Dekompozicija shema. pridruživanje bez gubitaka informacija. dekompozicija uz očuvanje ovisnosti, Mogući ključevi i nadključevi, Normalne forme, Pohrana i pretraživanje teksta u relacijskim bazama podataka, Izgradnja programskog sučelja s relacijskim bazama podataka, Objektno-relacijsko preslikavanje
  13. SQL (definicija podataka. stvaranje upita. izmjena podataka. integritetska ograničenja), Selekcija, Projekcija, Selekcija - projekcija - pridruživanje, Agregacija i grupiranje
  14. Podupiti, Okidači, Pohranjene funkcije i procedure, Funkcije prozora. rekurzija. pivotiranje
  15. Završni ispit

Literatura

(.), L. Richardson, S. Ruby (2007.), RESTful Web Services, O'Reilly Media,
(.), M. Masse (2011.), REST API Design Rulebook, O'Reilly Media,
(.), Elliotte Rusty Harold (2013), Java Network Programming, O'Reilly Media; Fourth Edition edition,
(.), Hector Garcia-Molina, Jeffrey D. Ullman, Jennifer Widom (2008), Database Systems: The Complete Book, Pearson,

Za studente

Izvedba

ID 222729
  Ljetni semestar
5 ECTS
R2 Engleski jezik
R1 E-učenje
30 Predavanja
0 Seminar
0 Auditorne vježbe
26 Laboratorijske vježbe
0 Konstrukcijske vježbe
0 Vježbe tjelesnog odgoja

Ocjenjivanje

88 izvrstan
75 vrlo dobar
63 dobar
50 dovoljan