Skip to main content

Advanced Object-Oriented ProgrammingLaajuus (3 ECTS)

Course unit code: TT00AA18

General information


Credits
3 ECTS

Objective

After completing the cource, the student understands the interfaces and layered architecture in program design. He or she is familiar with the concurrent programming paradigm.

The student is able to to design and implement programs using interfaces in programs with layered architecture, and has the capability to use MVC, DAO and DTO design patterns, as well as the capability to use Collections Framework, Java 2D API and JDBC API.

Content

Interfaces and layered architecture.
Collections Framework.
Concurrent programming (threads).
2D graphics.

Assessment criteria, satisfactory (1)

Interfaces and layered architecture:
- The student is able to define interfaces and implement them.
- The student is able to explain why to use MVC, DAO and DTO patterns.


Collections Framework:

- The student is able to list different Collection and Map structures and is able to name their application areas.
- The student is able to use Collection and Map structures for objects which have their natural ordering by default.


Concurrent programming (threads):

- The student can make programs using threads.

2D graphics:

- The student knows how to produce simple graphics.

Assessment criteria, good (3)

Interfaces and layered architecture:

- The student is able to to write programs according to MVC-model, using interfaces for different MVC layers.
- The student is able to define a DAO layer for a database application using JDBC.
- The student knows how to prevent SQL injections.

Collections Framework:
- The student is able to define the equality and the natural order for any class, which is supposed to be used as a key or value in any Collection or Map.

Concurrent programming (threads):
- The student is able to wite synchronized data stucures.
- The student knows the single thread rule in Swing environment.

2D graphics:
- The student knows ho to use double buffering while creating graphics.

Assessment criteria, excellent (5)

Interfaces and layered architecture:

- The student is able to use the Java Reflection API for a dynamic configuration of a program.
- The student is able to write a SQL injection safe DAO layer for a database application.

Collections Framework:

- The student is able to choose a proper data structure for a given problem.
- The student is familiar with less common data structures (e.g. EnumMap).


Concurrent programming (threads):

- The student is able to implement all the methods needed in a threads life cycle (stop, suspend, resume).
- The student is able to recognize and solve the situations where the single thread rule of Swing must be taken into account.

Go back to top of page