Nane Kratzke


Programming II

Published: 01 Apr 2023 (latest update: 03 May 2023)
Short: Prog II
Semester: SS 2023
Study: Computer Science

The course Programming II continues Programming I by introducing more sophisticated programming concepts for second-semester students. JAVA is used as a teaching language. (The C programming language is covered as well. However, this is not covered by this post.) Nevertheless, the principles apply to every (class-based) object-oriented programming language.

The course is given for students of the Computer Science/Software Engineering study programme at the L├╝beck University of Applied Sciences and will cover the following aspects:

  • Generics introducing concepts like generic classes and methods as well as concepts like type erasure
  • Recursive programming
  • Lambda programming
  • Graphical user interfaces (GUI) using Swing introducing MVC (model view controller) paradigma
  • Testing of software including introduction to contracts, unit testing and code coverage
  • Concurrent programming using threads introducing accompanying thread safeness problems like race conditions, producer-consumer problem, deadlocks.