The course Programming II continues Programming I by introducing more sophistacted programming aspects for second semester students. JAVA is used as teaching language. Nevertheless, the principles are applicable 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 following aspects:
- Object oriented concepts and programming techniques
- 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.