Osnove programskog jezika Java
Opis predmeta
Java kao programski jezik. Java kao strojno neovisna platforma. Razredi i objekti - nasljeđivanje, polimorfizam, enkapsulacija, skrivanje. Java kolekcije - skupovi, liste, stabla, stogovi, redovi, mape. Java Generics. Višedretvenost i višedretvene aplikacije. Problemi sinkronizacije i sinkronizacijski mehanizmi (muteksi, semafori, barijere). Izrada aplikacija s grafičkim korisničkim sučeljem: AWT i Swing; uporaba postojećih i razvoj vlastitih komponenti. MVC paradigma. Razvoj tjeran testovima (Test Driven Development). Rad s datotekama i datotečnim sustavom. Rad s podatkovnim slijedovima (streams). Raspodijeljene aplikacije (paket java.net). Uporaba UDP i TCP protokola. HTTP protokol. Razvoj Web aplikacija. Tehnologije Java Servlet i Java Server Pages (JSP). Web formulari. Apache Tomcat. Sigurnost u Web aplikacijama. Dodatne tehnologije: ANT, Hibernate, MySQL. Rad s bazama podataka. Preslikavanje objekata u relacije (O/R mapping).
Opće kompetencije
Studenti će moći razvijati samostalne (desktop) aplikacije kao i web aplikacije uporabom programskog jezika Java. Znat će koristiti ugrađene kolekcije podataka, raditi s datotekama, razviti korisničko sučelje te iskoristiti višedretvenost. Moći će napisati distribuirane aplikacije koje komuniciraju putem mreže. Znat će povezati program s relacijskom bazom podataka te koristiti O/R podsustav. Razumjet će kako rade web aplikacije te kako se pišu.
Ishodi učenja
- kreirati programe pisane u programskom jeziku Java
- koristiti Javin okvir kolekcija za organizaciju podataka te raditi s datotekama
- razviti korisničko sučelje uporabom tehnologije Swing
- primijeniti višedretvenost
- povezati aplikaciju s relacijskom bazom podataka te koristiti O/R podsustav
- dizajnirati web poslužitelj te koristiti tehnologije servleta i JSP-a za izgradnju web aplikacija
- razviti distribuirane aplikacije koje komuniciraju putem mreže računala
Oblici nastave
Predavanja
Održavaju se u računalnim laboratorijima pri čemu studenti mogu isprobavati primjere koji se rade kao i rješavati zadatke.
Provjere znanjaStudenti će dobiti niz zadataka koje trebaju rješavati samostalno u okviru redovnih domaćih zadaća. Na kraju se zadaje samostalni studentski projekt koji je također uvjet.
Tjedni plan nastave
- Uvod. Java kao jezik, Java kao platforma. Prvi program
- Razredi i objekti. Reference
- Razvoj temeljen na testovima
- Java kolekcije (1)
- Rad s datotekama
- Java kolekcije (2)
- Višedretvene aplikacije
- Swing (1)
- Swing (2)
- Distribuirane aplikacije. java.net paket
- Razvoj Web aplikacija.
- Web formulari. Tomcat. Sigurnost u Web aplikacijama.
- Dodatne tehnologije (ANT, Hibernate, MySQL)
Studijski programi
Sveučilišni preddiplomski
Automatika (modul)
Vještine - 6.semestra
(6. semestar)
Bežične komunikacijske tehnologije (modul)
Vještine - 6.semestra
(6. semestar)
Elektroenergetika (modul)
Vještine - 6.semestra
(6. semestar)
Elektroničko i računalno inženjerstvo (modul)
Vještine - 6.semestra
(6. semestar)
Elektronika (modul)
Vještine - 6.semestra
(6. semestar)
Elektrotehnika i informacijska tehnologija (studij)
Vještine - 4. semestra
(4. semestar)
Obradba informacija (modul)
Vještine - 6.semestra
(6. semestar)
Programsko inženjerstvo i informacijski sustavi (modul)
Vještine - 6.semestra
(6. semestar)
Računalno inženjerstvo (modul)
Vještine - 6.semestra
(6. semestar)
Računarska znanost (modul)
Vještine - 6.semestra
(6. semestar)
Računarstvo (studij)
Vještine - 4. semestra
(4. semestar)
Telekomunikacije i informatika (modul)
Vještine - 6.semestra
(6. semestar)
Sveučilišni diplomski
Automatika (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Bežične komunikacijske tehnologije (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Elektroenergetika (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Elektroničko i računalno inženjerstvo (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Elektronika (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Elektrotehnički sustavi i tehnologija (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Obradba informacija (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Programsko inženjerstvo i informacijski sustavi (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Računalno inženjerstvo (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Računarska znanost (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Telekomunikacije i informatika (profil)
Vještine - dipl.studij - 2. semestar
(2. semestar)
Literatura
Marko Čupić (2007.), Materijali za Java tečaj,
(.), Tutorijali s http://java.sun.com/,
Nositelji
Izvedba
ID 38047
Ljetni semestar
4 ECTS
R0 Engleski jezik
R1 E-učenje
60 Predavanja
0 Auditorne vježbe
15 Laboratorijske vježbe
Ocjenjivanje
izvrstan
vrlo dobar
dobar
dovoljan