Object-Oriented Programming (SWS 120)

This course provides students with a strong theoretical and practical foundation in the object-oriented programming paradigm for software development.

Course Description

SWS 120 introduces the principles and practices of object-oriented programming (OOP) and contrasts them with structured programming approaches. Students explore how OOP concepts are applied in real-world business and engineering software systems.

Core topics include classes and objects, data abstraction, encapsulation, inheritance, polymorphism, interfaces, exception handling, and collections. Students apply these concepts through hands-on programming exercises and projects.

The primary language of instruction is C#.

Weekly Topics

  1. Introduction to object-oriented programming and C#
  2. Classes and objects
  3. Methods and program structure in C#
  4. Arrays and collections fundamentals
  5. Classes and objects (deeper exploration); test 1
  6. Inheritance and code reuse
  7. Polymorphism and interfaces
  8. Exception handling and error management
  9. GUI concepts I; test 2
  10. GUI concepts II
  11. Files and streams
  12. Generics
  13. Collections and collection interfaces
  14. Project presentations

Course Materials

Mandatory Text

Deitel, J., & Deitel, H. Visual C# How to Program (6th ed.). Pearson, 2016.

Supplementary Texts

C# Development Resources

Official Documentation

Development Tools

Practice and Problem Solving

Supplementary Reading and Community Resources