Objektno programiranje 2 Šifra: 131107 | 6 ESPB
Opšte informacije
Nivo studija:
Godina studija:
3
Semestar/Trimestar:
5
Uslov:
Poznavanje osnova objektno orijentisanog programiranja
Cilj:
Produbljivanje poznavanja objektno orijentisane metododlogije i osposobljavanje studenata da projektuju i pišu složene objektno orijentisane programe na jeziku Java.
Ishod:
Studenti će biti osposobljeni da uz pomoć savremenog razvojnog okruženja razviju složene programe na jeziku Java.
Sadržaj predmeta
Teorijska nastava:
- Klase. Nasleđivanje (proširenje), modifikatori pristupa, redefinisanje metoda, apstraktne klase, interfejsi.
- Unutrašnje klase, polimorfizam, izuzeci.
- Klasa Object, interfejs, konstruktor, prenos vrednosti, statička polja, statički nicijalizacioni blokovi.
- Standardna biblioteka. Ulaz izlaz. Serijalizacija.
- Konkurentno programiranje. Niti. Sinhronizacija.
- Grupe niti. Plitka i duboka kopija.
- Generici.
- GUI: AWT
- GUI: Swing
- GUI: JavaFX.
- Mrežno programiranje. Klijent server arhitektura, rešenje klijent-servera konkurentnim programiranjem.
- Korišćenje:TCP/IP, URL i URLConnection u Javi.
- Prenos fajlova u mrežnoj klijent-server komunkaciji. Mrežna komunikacija datagramima.
- Komunikacija sa bazama podataka.
- Java tehnologije višeslojnih sistema.
Praktična nastava:
- Praktična nastava prati program predavanja rešavanjem zadataka u računarskoj laboratoriji.
Literatura
- Yakov Fain (2015): Java 8 programiranje. Mikro knjiga.
- Bruce Eckel (2014): Misliti na Javi, prevod 4. izdanja. Mikro knjiga.
- Cay S. Horstmann and Gary Cornell (2013): Core Java, Advanced Features, Vol. 2. Prantice Hall.
- Cay S. Horstmann and Gary Cornell (2011): JAVA 2 Advanced Features, Prantice Hall.
Broj časova aktivne nastave (nedeljno)
Predavanja:
3
Vežbe:
2
Drugi oblici nastave:
0
Ocena znanja (maksimalan broj poena 100)
Predispitne obaveze
Poeni
aktivnosti u toku predavanja
0
aktivnosti na laboratorijskim vežbama
10
seminarski rad
0
kolokvijum
60
Završni ispit
Poeni
Pismeni ispit
30
Usmeni ispit
0