Nane Kratzke


Programming II (Summer 2014)

Published: 13 Jul 2014
Short: Prog II
Semester: SS 2014
Study: Computer Science, Information Technology and Design

The lecture Programming II continues Programming I by introducing more sophistacted programming aspects for freshman students (second semester).

The lecture covers aspects like unit testing and code coverage, types and generics, OOAD by example of Tic Tac Toe, graphical user interfaces and the model view controller paradigm, as well as concurrent programming using threads.

JAVA is used as teaching language, nevertheless the principles are applicable to every (imperative or class based object oriented) programming language.

The lecture is given for students of the following study programs at L├╝beck University of Applied Sciences:

  • Computer Science/Software Engineering study programme, B. Sc.
  • Information Technology and Design study programme, B. Sc. (not all of the following aspects are coverd)

The lecture will cover following aspects:

  • Testing of software including introduction to contracts, unit testing and code coverage
  • Generics introducing concepts like generic classes and methodes as well as concepts like type erasure, bounds
  • Introduction to OOAD (object oriented analysis and design) by example of Tic Tac Toe
  • Graphical user interfaces (GUI) using Swing introducing MVC (model view controler) paradigma
  • Concurrent programming using threads introducing accompanying thread safeness problems like race conditions, producer-consumer problem, deadlocks.


  • Unit 6: Object oriented programming (only for information technology design)
  • Unit 7: Object oriented programming (further details) (self-study, only for information technology design)
  • Unit 8: Testing (only for computer science)
  • Unit 9: Generics (only for computer science)
  • Unit 10: OOAD by example of Tic Tac Toe
  • Unit 11: GUI and MVC
  • Unit 12: Concurrent programming (only for computer science)
  • Catalogue of excercises