Programming Fundamentals 2 (Lecture & Lab)

Instructors: Matthias Hauswirth

Academic Programs: Bachelor of Science in Informatics

Workload: 6 ECTS


This course teaches how to develop software using an object-oriented approach. It teaches how to structure a problem using the concept of classes, and how to use fields and methods to model state and behavior. The course uses Java as its programming language. It introduces the fundamental concepts of types, dynamic memory allocation, and references. It covers the ideas of collections and iteration to deal with multiple objects, the ideas of inheritance and polymorphism to deal with variability in software, and the idea of exception handling to deal with unexpected situations. It covers principles of design such as coupling and cohesion, encapsulation, and immutability, and it introduces common design patterns. The practical aspects of the course include testing and debugging techniques that help improve the quality of the resulting software.

I can't fill your head with knowledge. You have to suck it up yourself.

Programming Languages

Create languages for humans to tell computers what to do. More...

Software Engineering

Create methods and tools to build large software systems. More...

Gold sponsors:
Silver sponsor:
Con la collaborazione di: