I863 – Introduction to Programming in Java

Module
Introduction to Programming in Java
Introduction to Programming in Java

Please note: This module will be offered for the first time in the Winter semester 2025/26 semester.
Module number
I863
Version: 1
Faculty
Informatics/Mathematics
Level
Master
Duration
1 Semester
Semester
Winter semester
Module supervisor

PD Prof. Dr. rer. nat. Marco Block-Berlitz
marco.block-berlitz(at)htw-dresden.de

Lecturer(s)

PD Prof. Dr. rer. nat. Marco Block-Berlitz
marco.block-berlitz(at)htw-dresden.de

Course language(s)

English
in "Introduction to Programming in Java"

ECTS credits

5.00 credits

Workload

150 hours

Courses

4.00 SCH (2.00 SCH Lecture | 2.00 SCH Internship)

Self-study time

90.00 hours

Pre-examination(s)
None
Examination(s)

Written examination
Module examination | Examination time: 100 min | Weighting: 100% | tested in English language
in "Introduction to Programming in Java"

Form of teaching

2/0/2  V/Ü/P

Media type
  • Lecture materials are available as videos and the slides as PDFs
  • In addition to the lecture questions catalog, which is available at the end of each lecture, additional voluntary practical and theoretical exercises are offered.
  • The current program collection for the book Java-Intensivkurs is provided
Instruction content/structure
  • Programming paradigm motivation
  • Java basics and programming principles
  • Introduction to UML and state diagrams
  • Operations on binary level at the example cryptography
  • Arrays one and multi-dimensional, literal generation
  • Debugging, assertions and error handling, error classes
  • Formatted output
  • Detecting logical errors (debugging)
  • Detecting logical errors (Hoare calculus)
  • Object oriented programming in Java
  • Inheritance around Object
  • Everything is object-oriented in Java
  • Detecting logical errors (Test-Driven-Development)
  • Graphical user interfaces
  • Algorithms and data structures in Java - runtime analysis
  • Algorithms and data structures in Java - Graph theory
  • Time and data management
Qualification objectives
  • Students will be able to decompose and classify Java and other programming languages into programming paradigms.
  • Master Java fundamentals and understand the general programming principles that apply to imperative programming languages.
  • They learn Java, an object-oriented programming language, and develop an understanding of object-oriented programming.
  • By the end of the course, they will be able to read and design activity and state diagrams from UML and use them in the software development process.
  • They can understand and apply logical operations in Java at the binary level.
  • Furthermore, they can know techniques (debugging, assertions, exceptions, verification (e.g. Hoare calculus), unit tests (test-driven development)) for handling the three classes of errors (syntax, runtime, logic) and can use them.
  • They develop skills in human-machine interaction via an introduction to graphical user interfaces.
  • Using the skills developed, they can program algorithms and data structures in Java and evaluate and compare solution approaches through knowledge of runtime analysis.
  • They understand graph theory as a useful tool of informatic thinking and development processes and can implement graphs and their algorithms and use them in the solution process.
  • Practicing scientific working methods (recognizing, formulating, solving problems, training the ability to abstract).
  • Training oral communication skills in the exercises by practicing free speech in front of an audience and in discussion.
Social and personal skills
No information
Special admission requirements
No information
Recommended prerequisites
Continuation options
No information
Literature
  • Block, Marco: Java-Intensivkurs - In 14 Tagen lernen Projekte erfolgreich zu realisieren, Springer-Verlag, 2009
  • Martin, Rovert C.: Clean Code: A Handbook of Agile Software Craftmanship, Prentice Hall, 2009
  • Block-Berlitz M.: Warum sich der Dino furchtbar erschreckte - Lehrbuch zu Beleuchtung und Rendering mit Java, LWJGL, OpenCV und GLSL, vividus Wissenschaftsverlag, 3. Auflage, 2021
  • Schöning, Uwe: Algorithmen kurzgefasst, Spektrum Akademischer Verlag, 1997
  • Hoffmann, Dirk W.: Theoretische Informatik, Hanser Verlag, 2009
Current teaching resources
  • Course script
Notes
No information