CILJEVI PREDMETA: Podići razinu znanja iz objektno orijentiranog programiranja, korištenjem mogućnosti obrade iznimnih situacija (exceptions), korištenjem uzoraka programiranja (design patterns) kao i osnovnim korištenjem biblioteke SWING za rad s korisničkim sučeljem. Kolegij osigurava ulazne kompetencije za kolegije Baze podataka, Korisnička sučelja, Objektno orijentirano programiranje (C++).
ISHODI UČENJA NA RAZINI PROGRAMA KOJIMA PREDMET DOPRINOSI:
1. ZNANJE I RAZUMIJEVANJE
1.5. demonstrirati poznavanje i razumijevanje uporabe računala i programske podrške;
1.6. demonstrirati poznavanje i razumijevanje rukovanja podacima, rješavanja problema i programiranja;
2. PRIMJENA ZNANJA I RAZUMIJEVANJA
2.5. opisati osnovne informatičke koncepte;
2.6. usvojiti algoritamske metode mišljenja i zaključivanja i primijeniti ih u rješavanju problema;
2.8. pripremiti učenike za cjeloživotno učenje u području informacijsko komunikacijskih tehnologija;
4. KOMUNIKACIJSKE SPOSOBNOSTI
4.4. koristiti engleski jezik pri komunikaciji, korištenju literature i pisanju znanstvenih i stručnih radova;
5. SPOSOBNOST UČENJA
5.1. samostalno koristiti stručnu literaturu i ostale relevantne izvore informacija;
OČEKIVANI ISHODI UČENJA NA RAZINI PREDMETA:
Po završetku kolegija, studenti će biti sposobni:
* samostalno razviti jednostavne računalne programe koristeći programski jezik java, kao i biblioteku SWING
* znati koristiti naredbe jave koje omogućuju obradu iznimnih situacija (exception handling)
* koristiti uzorke tipa Strategy, Observer, Factory, Decorator, Singleton
* samostalno koristiti stručnu literaturu i ostale relevantne izvore informacija, a posebno internet
SADRŽAJ PREDMETA:
Sadržaj po tjednima:
1. Java i objektno orijentirano programiranje: osnovni elementi
2. Java i objektno orijentirano programiranje: klase i objekti
3. Java i objektno orijentirano programiranje: obrada iznimnih situacija (exceptions)
4. Java i objektno orijentirano programiranje: principi objektno orijentiranog programiranja
5. Java i objektno orijentirano programiranje: interface-i, apstraktne klase
6. Java i objektno orijentirano programiranje: specifičnosti rada s raznim tipovima (primitivni/objektni, mutable/immutable, statički/nestatički, private/protected/public)
7. Biblioteka SWING, osnove (JFrame, JPanel, JTextField, JButton, paintComponent, BorderLayout)
8. Java i objektno orijentirano programiranje: usporedba s pythonom
9. Uzorak: Observer
10. Biblioteka SWING i uzorak Observer (razni ActionListener-i); Java i objektno orijentirano programiranje: anonimne unutarnje klase (anonymous inner classes)
11. Uzorak: Strategy
12. Uzorak: Decorator
13. Programiranje višenitnog (multithreaded) programa unutar SWING okruženja (SwingWorker) - primjer animacija kosog hica
14. Uzorci: Factory method i Abstract factory
15. Uzorak: Singleton, double-checked locking algoritam
OBVEZE STUDENATA:
Pohađanje nastave, pisanje domaćih zadaća, predaja projektnog zadatka.
OCJENJIVANJE I VREDNOVANJE RADA STUDENATA:
Tijekom semestra studenti rade domaće zadaće na tjednoj bazi (65%) i rješavaju kratke testove (10%). Na kraju samostalno izrađuju projektni zadatak (25%). Bodovi se dodjeljuju usmenom provjerom znanja prethodno riješenih domaćih zadaća i predanog projekta. Završna ocjena se određuje prema sljedećim pragovima: (bodovi, ocjena): 40% 2; 55% 3; 70% 4; 85% 5.
|
- E. T. Freeman, E. Robson, B. Bates, K. Sierra, Head First Design Patterns, O'Reilly Media, 2004
- http://docs.oracle.com/javase/tutorial
- E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley, 1994.
|