Subject name | Java Programming |
Details | Code VSITE132 Abbrev. JAVA ECTS 5 Year 3 Semester Summer semester Type elective NQF Level 6 Bachelor study E-Learning 0% |
Activities | IT zg - Win 24/25 ECTS Units Hours Total T 1 15 2 30
N 0.5 15 1 15
L 0.5 7 2 15
S 0 0 0 0
PN 0 0 0 0
PT 0 2 1 0
PR 0 1 6 0
EN 0 1 1 0
ET 0 1 2 0
AL 3 1 90 90
|
Teachers | Leaders: Krunoslav Bilić, asist., Marino Debeljuh, pred. |
Prerequisits | None |
Content | Uvod u JAVA programiranje. Objektno orijentirano programiranje u Javi. Osnove JAVA jezika. Rad s objektima. Polja, uvjeti, petlje. Osnovne Java klase. Modifikatori i kontrola pristupa. Pisanje Java apleta. Rad s grafikom u Javi. Korištenje fontova i boje. Animacije i zvukovi. Upravljanje događajima i interaktivnost. Paketi i sučelja. Java program i Web stranica. Osnove Java Servleta. Osnove JavaServer Pages (JSP). Java Virtual Machine. Java razvojne platforme.
|
Learning objectives | Opća znanja. Objektno orijentirano programiranje. Razumijevanje smisla i veze programskih objekata i klasa sa stvarnim svijetom.
Posebna znanja. Upoznavanje s JAVA platformom: Java virtualna mašina i JAVA API. Razumijevanje važnosti obrade neočekivanih ulaza i ponašanja programa. Korištenje SWING paketa pri izradi aplikacija s grafičkim sučeljem. Razlikovanje i implementacija JAVA aplikacije i apleta.
|
Learning outcomes | 1. Implement JAVA applet. 2. Implement JAVA application. 3. Design structure of classes with interdependence. 4. Create graphical interface using SWING. 5. Understand processes in JAVA applications.
|
Competencies | Kolegij pruža specijalistička znanja s područja programiranja kao nadogradnju jezgre računarstva i osposobljava polaznika za izradu programske podrške u programskom jeziku Java.
|
Recommended Literature | 1. Eckel, B: «Thinking in JAVA», Second Edition, Prentice Hall, 2000. 2. Lemay, L; Perkins, C; Morrison, M: «Teach Yourself JAVA in 21 Days», SAMS Publishing, 2001. 3. Sušanj, D: «JAVA programiranje za Internet i WWW», Znak Zagreb, 1997. 4. Sun tutorial: «http://java.sun.com/docs/books/tutorial»
|
Additional Literature | |
lectures (T) | - Uvodno predavanje:
Usporedba JAVA i drugih programskih jezika.
JAVA platforma: jezik JAVA, JAVA virtualna mašina i JAVA API
- Varijable
- Operatori, izrazi, naredbe, blokovi
- Kontrola toka;
Rad s objektima objekata, životni ciklus objekata;
- Karakteri i Stringovi;
Nizovi
- Klase:
Implementacija klase, deklaracije klase, tijelo klase, konstruktori;
Članovi deklaracija i implementacija metoda
- Klase:
kontrola pristupa, statički članovi,
Nasljeđivanje
- Klasa Object osnova za sve klase;
Konačne metode i klase;
apstrakne i unutrašnje klase
- Sučelja;
Paketi
- Iznimke
- Višenitnost;
Timer i TimerTask
Thread
Sinkronizacija niti
- I/O: čitanje i pisanje
InputStream i OutputStream
Reader i Writer
Filteri
- Apleti
- Grafičko sučelje
- Korištenje kolekcija
|
numeric exercises (N) | - Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
- Not defined
|
laboratory exercises (L) | - JDK instalacija, upoznavanje s okruženjem, kompajliranje i pokretanje HelloWorld komandno linijske aplikacije
- Aplikacija koja ispisuje parametre zadane u komandnoj liniji.
- BankovniRacun:
dogovor oko sučelja i implementacija Klase koja u programu predstavlja bankovni račun.
Komandno linijska za testiranje ponašanja klase BankovniRacun.
- Iznimke u praksi:
na primjeru BankovniRacun dodati stvaranje, bacanje, propuštanje i obrada iznimke.
Implementacija vlasite iznimke.
- Koomandno linijski kalkulator:
korištenje i filtriranje toka znakova
- Chat klient:
osnove JAVA appleta;
korištenje swing paketa za implementaciju grafičkog sučelja
- Chat klient:
Rad s LayoutManager-ima
Prijava EventHandler-a i implementacija
- Chat klient:
Uključivanje i isključivanje djelova sučelja
GridLayout
- Chat klient:
korištenje klase Socket, spajanje na server
korištenje niti
- Sučelje, definicija i implementacija.
Primjer igra pogađanja brojeva.
Dvije implementacije sučelja
- Chat server:
ServerSocket
- Chat server:
Rad s više klijenata
Višenitnost
- Chat Chat server:
Rad s više klijenata 2
Collections klase
- Korištenje baza
|
preliminary exam - theory (PT) | - Kolokvij se polaže kroz test koji se sastoji od jednostavnog programskog zadatka od i 4 teoretska zadatka.
Programski zadatak donosi do 35 bodova, a teoretski se ocjenjuju s 15 - 20 bodova, ovisno o njegovoj težini.
Ukupno ima 100 bodova, a uvjet za prolaz je 50 bodova.
Obuhvaćeno je gradivo do iznimki.
- Kolokvij se polaže kroz test koji se sastoji od jednostavnog programskog zadatka od i 4 teoretska zadatka.
Programski zadatak donosi do 35 bodova, a teoretski se ocjenjuju s 15 - 20 bodova, ovisno o njegovoj težini.
Ukupno ima 100 bodova, a uvjet za prolaz je 50 bodova.
|
project (PR) | - Student mora izraditi i prezentirati jednostavnu aplikaciju u jeziku JAVA prema svom izboru.
|
exam - numeric (EN) | - Not defined
|
exam - theory (ET) | - Za studente koji su položili kolokvije, ispit se sastoji od usmenog ispita kroz koji se provjerava teoretsko i praktično znanje. Konačna ocjena se formira na osnovu rezultata kolokvija, ocjene laboratorijskih vježbi, ocjena stečenih tijekom nastave na osnovu izlaznih testova, ocjene praktičnog rada i ocjene usmenog ispita. Studenti koji nisu položili kolokvije moraju pismeno polagati pripadajuće gradivo kroz test koji se sastoji od 10 zadataka teoretskog i praktičnog značaja.
|
autonomus learning (AL) | - kolokviji, konzultacije, samostalno učenje, samostalno rješavanje numeričkih zadataka, samostalni rad u laboratoriju
|