htw saar Piktogramm
Back to Main Page

Choose Module Version:


Programming 3

Module name (EN): Programming 3
Degree programme: Applied Informatics, Bachelor, ASPO 01.10.2017
Module code: PIB-PR3
Hours per semester week / Teaching method: 2V+2P (4 hours per week)
ECTS credits: 5
Semester: 3
Mandatory course: yes
Language of instruction:
Project work

[updated 24.02.2018]
Applicability / Curricular relevance:
PIB-PR3 Applied Informatics, Bachelor, ASPO 01.10.2017, semester 3, mandatory course
60 class hours (= 45 clock hours) over a 15-week period.
The total student study time is 150 hours (equivalent to 5 ECTS credits).
There are therefore 105 hours available for class preparation and follow-up work and exam preparation.
Recommended prerequisites (modules):
PIB-PR1 Programming 1
PIB-PR2 Programming 2

[updated 03.08.2017]
Recommended as prerequisite for:
PIB-WEB Principles of Web Development

[updated 05.11.2016]
Module coordinator:
Dipl.-Inf. Christopher Olbertz
Lecturer: Dipl.-Inf. Christopher Olbertz

[updated 28.09.2016]
Learning outcomes:
After successfully completing this module, students will:
- be able to program an application with a graphical user interface and database connection.
- understood the meaning of easy-to-read code and are able to implement what they have learned.
- can achieve versioning with Git
- understand the importance of good architecture for software and will be able to implement the architecture presented in the lecture.
- understand Java´s internationalization mechanism and be able to internationalize their programs.

[updated 24.02.2018]
Module content:
1. Basic concepts of graphical user interfaces with Swing as an example for a well-known Java framework
- Simple GUI applications
- Layout management with Swing
- Event handling
- Menus
- Dialogs
- Tables with JTable
- Internationalization
2. Connecting databases
- Introduction to Hibernate as an O/R mapper
3. JavaFX as a modern GUI framework for Java
- Structure of a JavaFX application
- Lambda expressions
- Event handling
- Collections
- Important components of JavaFX
- Styling with CSS
4. Robust object-oriented programming style
- Architectures for large software with a graphical user interface and database connection
- Checked and unchecked exceptions in Java
- Interface-based programming
- Introduction to Spring
- New features in Java 8
- Clean code

[updated 24.02.2018]
Teaching methods/Media:
Slides with notes and examples.

[updated 24.02.2018]
Recommended or required reading:
Java Swing, 2nd Edition von Brian Cole, Robert Eckstein, James Elliott, Marc Loy, Dave Wood
Java 8 - die Neuerungen: Lambdas, Streams, Date and Time API und JavaFX 8 im Überblick von Michael Inden
Javafx for dummies von Doug Lowe
Einführung in JavaFX: Moderne GUIs für RIAs und Java-Applikationen von Ralph Steyer
Java ist auch eine Insel von Christian Ullenboom
Spring & Hibernate: eine praxisbezogene Einführung von Gerald Bachlmeyr, Thomas Langer, Thorsten Lueckow, Richard Oates, Stefan Wille
Clean Code von Robert C. Martin

[updated 24.02.2018]
Module offered in:
WS 2021/22, WS 2020/21, WS 2019/20, WS 2018/19
[Thu Dec  2 02:09:22 CET 2021, CKEY=pp3, BKEY=pi2, CID=PIB-PR3, LANGUAGE=en, DATE=02.12.2021]