Nane Kratzke


Programming I

Published: 21 Sep 2017
Short: Prog I
Study: Computer Science
Semester: WS 2017/18

The course Programming I is about fundamentals of programming for freshman students and covers fundamental concepts of programming. JAVA is used as teaching language, nevertheless the principles are applicable to every (imperative or class based object oriented) programming language. The course is given for Computer Science students at the L├╝beck University of Applied Sciences. and covers the following aspects:

  • Fundamental concepts of programming including programming paradigms and runtime models
  • Variables, data types, operators and expressions
  • Control flow and routines (functions, procedures, methods)
  • Reference data types and collections
  • (Stream based) I/O programming and serialization of objects
  • Recursive programming and recursive datastructures
  • Functional programming using lambda functions
  • Exception handling
  • Introduction to object oriented programming and UML introducing fundamental concepts like abstraction, encapsulation, polymorphism


  • Unit 1: Core concepts of programming
  • Unit 2: Fundamentals of imperative programming
  • Unit 3: Reference data types and collections
  • Unit 4: I/O programming, serialization
  • Unit 5: Recursive and functional programming
  • Unit 6: OO and UML
  • Exercises
  • Youtube playlist: Excercises of WS2015/16 explained (Thanks to Marco Torge Gabrecht for providing this tremendous work.)