C# OOP Fundamentals Course 2026

Ein umfassendes Portfolio für moderne Softwareentwicklung mit C# und .NET
Einrichtung • Lerneinheiten • Best Practices • Dokumentation
🚀 Einrichtung 2026
Willkommen im Jahr 2026. Um dieses Repository optimal zu nutzen, benötigen Sie eine aktuelle Entwicklungsumgebung. Folgen Sie dieser Schritt-für-Schritt-Anleitung.
1. SDK Installation
Bevor Sie eine IDE installieren, stellen Sie sicher, dass das .NET 10 SDK installiert ist.
2. Entwicklungsumgebung (Wählen Sie eine)
- Laden Sie den Visual Studio Installer herunter.
- Wählen Sie beim Installieren den Workload ".NET Desktop Development".
- Stellen Sie sicher, dass unter "Individual Classes" Git for Windows und GitHub Extension angehakt sind.
- Starten Sie Visual Studio und melden Sie sich mit Ihrem Microsoft-Konto an.
- Installieren Sie Rider über die JetBrains Toolbox App.
- Beim ersten Start: Wählen Sie das "C# Deep Dive" Keymap Schema (optional, oder VS Standard).
- Konfigurieren Sie unter Settings > Build, Execution, Deployment > Toolset and Build das installierte .NET 10 SDK.
3. Essenzielle Plugins & Erweiterungen
Egal welche IDE Sie nutzen, diese Tools sind Pflicht für modernen Clean Code:
| Tool | Zweck | Installation |
|---|
| GitHub Copilot Chat NEXT | AI-Pair Programming | VS Installer / Rider Marketplace |
| ReSharper 2026.1 | Code Analysis & Refactoring | (In Rider integriert) / VS Extension |
| SonarLint | Clean Code Linter | Marketplace Extension |
| Roslyn Analyzers | Statische Code-Analyse | (NuGet Paket im Projekt vorinstalliert) |
📚 Lerneinheiten (Roadmap)
Dieses Repository ist chronologisch und thematisch strukturiert. Jede Unit enthält Theorie, Praxisaufgaben und Lösungen.
| ID | Thema | Fokus | Status |
|---|
| Phase 1 | Foundation | | |
| 01 | Einführung | Setup, Hello World, Console | ✅ |
| 02 | Grundlagen | Variablen, Datentypen, Operatoren | ✅ |
| 03 | Kontrollstrukturen | If, Switch, Loops | ✅ |
| 04 | Methoden | Parameter, Return, Call Stack | ✅ |
| 05 | Strings & Memory | Heap vs Stack, String Manipulation | ✅ |
| Phase 2 | Object Oriented Programming | | |
| 06 | Arrays | 1D Arrays, Iteration, Algorithmen | ✅ |
| 07 | Multidimensionale Arrays | 2D/3D Arrays, Matrix-Operationen | ✅ |
| 08 | Prozeduren | Void Methoden, Side-Effects | ✅ |
🛠 Best Practices & Standards
Wir schreiben Code nicht nur, damit er funktioniert, sondern damit er lebt, wartbar und schön ist.
C# 14 Features
Wir nutzen konsequent die neuesten Sprachfeatures:
- Primary Constructors: Weniger Boilerplate für Klassen.
- Enhanced Collection Expressions:
List<int> x = [1, 2, 3];
- Field Keywords: Sauberere Properties.
- Lambda Default Parameters: Flexiblere Funktionszeiger.
GitHub Workflow (GitFlow)
- Main: Nur stabiler, produktionsreifer Code.
- Develop: Integrations-Branch für neue Features.
- Feature-Branches:
feature/array-sorting, fix/typo-readme.
- Commit Messages: Conventional Commits sind Pflicht!
feat: add bubble sort implementation
docs: update xml comments for calculator
fix: resolve null reference exception
Methodik
- TDD (Test Driven Development):
- 🔴 Red: Schreibe einen Test, der fehlschlägt.
- 🟢 Green: Implementiere minimalen Code, um den Test zu bestehen.
- 🔵 Refactor: Optimiere den Code ohne die Funktionalität zu ändern.
- SFC (Separation of Concerns): Logik (Service), Daten (Model) und Anzeige (UI/Console) werden strikt getrennt.
📝 Dokumentation & XML KDocs
In diesem Repository gilt: Wenn es nicht dokumentiert ist, existiert es nicht.
Wir nutzen den vollen Standard von Microsoft XML Documentation Comments.
Pflicht-Tags für jedes Member
/// <summary>
/// Berechnet die Summe zweier Ganzzahlen und prüft auf Überlauf.
/// </summary>
/// <param name="a">Der erste Summand.</param>
/// <param name="b">Der zweite Summand.</param>
/// <returns>Das Ergebnis der Addition.</returns>
/// <exception cref="OverflowException">Wird geworfen, wenn das Ergebnis Int32.MaxValue überschreitet.</exception>
/// <example>
/// <code>
/// int result = Calculator.Add(5, 10);
/// Console.WriteLine(result); // 15
/// </code>
/// </example>
/// <remarks>
/// Diese Methode ist thread-safe implementiert.
/// </remarks>
public int Add(int a, int b) { ... }
🎨 UML Integration
Wir visualisieren Konzepte mit MermaidJS. Jede Unit enthält Diagramme aus den "Big 5":
- Klassendiagramme: Struktur und Beziehungen.
- Sequenzdiagramme: Zeitlicher Ablauf und Interaktion.
- Aktivitätsdiagramme: Programmfluss und Logik.
- Zustandsdiagramme: Statusübergänge von Objekten.
- Anwendungsfalldiagramme (Use Case): Anforderungen und Akteure.
classDiagram
class Student {
+int Id
+string Name
+Enroll()
}
class Course {
+string Title
+AddStudent()
}
Student --> Course : Enrolls in >
Aktueller Stand: 28. Januar 2026
Das Repository wurde um das Modul 21 erweitert. Dieses beinhaltet:
- String-Erweiterungen: Implementierung von Hilfsmethoden wie
.Left(), .Right() und .IsPalindrome().
- Integer-Validierung: Statische Erweiterungen für
.IsEven() und .IsOdd() zur Prüfung von Zahlenwerten.
- Best Practices: Alle Methoden sind mit XML-Tags dokumentiert und durch Unit-Tests abgesichert.
Das Repository wurde um LINQ-Grundlagen erweitert:
- Modul 22: Einführung in LINQ (Language Integrated Query) mit Fokus auf Filteroperationen (
Where) unter Verwendung von Extension-Method-Syntax und Query-Expression-Syntax.
Projekt-Struktur
Jedes Modul enthält:
- Eine spezifische
README.md mit Lernzielen und Aufgabenstellung.
- Das entsprechende Referenzmaterial (PDF-Folien oder Aufgabenblätter).
- Ein C#-Projekt für die Implementierung.
- Ein Test-Projekt zur Validierung der Funktionalität.
Richtlinien
- Dokumentation: Durchgängige Nutzung von XML-Dokumentationskommentaren.
- Qualität: Code-Lösungen folgen den erweiterten IHK-Vorgaben für Fachinformatiker.
- Entwicklung: Einsatz von Test-Driven Development (TDD) und Separation of Concerns (SFC).