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.
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)
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.