Ects: 5
Predavanja: 1
Vježbi: 3

Cilj predmeta:

Upoznavanje programskog jezika Java, osnova objektno orijentiranog programiranja i razvoja aplikacija u Javi.

Sadržaj predmeta:

Povijest programskog jezika Java. Karakteristike Java virtualne mašine. Usporedba mogućnost i sintakse Jave s ostalim objektno orijentiranim jezicima. Upoznavanje s programskim alatima i platformom. Razvoj aplikacija instanciranjem objekata iz postojećih klasa i razvoj vlastitih. Komponente i sučelja. Nasljeđivanje. Obrada grešaka i iznimke. Dinamičke strukture podataka i standardni Java paketi. Generičko programiranje. Višedretveno programiranje. Programiranje Web aplikacija. Java apleti. Reflektivne programske strukture. Obrasci oblikovanja u Javi. Izrada programske dokumentacije za Java programe. Korištenje lambda izraza u programiranju. Implementacija Java programa koji koriste datoteke. Implementacija grafičkog sučelja pomoću JavaFX tehnologije. Spajanje Java aplikacija s bazom podataka.

Kompetencije:

Student će upoznati karakteristike i sintaksu programskog jezika Java, a rješavanjem konkretnih programskih zadataka, student će steći praktična znanja i iskustva. Razumijevanje specifičnosti Jave u odnosu na druge objektno orijentirane jezike. Stjecanja vještina za samostalno programiranje jednostavnijih JAVA aplikacija.

Ishodi učenja:

Student će nakon polaganja ovog predmeta moći: 1. Napisati programski kod JavaFX aplikacije koja će koristiti grafičko sučelje i bazu podataka 2. Izabrati opciju razvoja u programskom jeziku Java ako je odgovarajući za rješavanje odabranog problema 3. Organizirati dijelove aplikacije u klase, sučelja i pakete u skladu s objektno orijentiranim principima programiranja 4. Razviti JavaFX aplikacije koja rješavaju praktične probleme različitih vrsta 5. Samoprocijeniti prikladnost Java programskog jezika za rješavanje određenog praktičnog problema 6. Organizirati razvojno okruženje Eclipse za učinkovito razvijanje JavaFX aplikacija 7. Osmisliti strukturu klasa Java aplikacija kako bi bila prilagođena za naknadna proširenja 8. Otkriti mogućnosti proširenja aplikacije open source bibliotekama (engl. library) 9. Preurediti postojeća aplikativna rješenja na programski jezik Java 10. Povezati znanja ostalih programskih jezika s programskim jezikom Java 11. Kritički prosuđivati prednosti i mane programskog jezika Java s obzirom na ostale programske jezike Navedeni ishodi učenja doprinose ishodima učenja studijskog programa: - Koristiti funkcionalnosti modernih inženjerijskih alata neophodnih za praksu (5). - Razviti programske aplikacije korištenjem suvremenih strukturnih, proceduralnih i objektnih programskih jezika (6).