All Coder Things
Artikel, Referenzen und praxisnahe Projektserien rund um die Softwareentwicklung.
Leitfäden
Ausgewählte Artikel
SOLID-Prinzipien mit C#
SOLID-Prinzipien mit C#-Beispielen: flexiblen, wartbaren und testbaren Code erstellen.
Grundlegende Datentypen in C#
Grundlegende Datentypen in C#: numerisch, textbasiert, logisch, objektorientiert und nullable.
Delegates und Ereignisse in C#
Lernen Sie Delegates und Events in C#, um ereignisgesteuerte Programmierung mit Callbacks und Beispielen umzusetzen.
Unsicherer Code und Zeiger in C#
Lernen Sie unsicheren Code und Zeiger in C#, um mit Speicheradressen und Low-Level-Operationen zu arbeiten.
Benchmarking mit BenchmarkDotNet in C#
Lernen Sie Benchmarking in C# mit BenchmarkDotNet zur genauen Leistungsanalyse und Optimierung.
Klassen, Objekte, Eigenschaften und Methoden in C#
Erlernen Sie die Grundlagen von Klassen, Objekten, Eigenschaften und Methoden in C# für objektorientierte Programmierung.
LINQ Grundlagen in C# (Where, Select, OrderBy)
Lernen Sie LINQ-Grundlagen in C# mit Where, Select und OrderBy zum Filtern, Projizieren und Sortieren von Collections.
Interfaces und Abstrakte Klassen in C#
Lernen Sie Interfaces und abstrakte Klassen in C#, ihre Unterschiede und den Einsatz für sauberes, erweiterbares Design.
Kapselung, Vererbung und Polymorphismus in C#
Lernen Sie Kapselung, Vererbung und Polymorphismus in C# mit Beispielen, um zentrale OOP-Konzepte sicher anzuwenden.
Netzwerkprogrammierung in C# (TcpClient, HttpClient, REST-API-Aufrufe)
Lernen Sie Netzwerkprogrammierung in C# mit TcpClient, HttpClient und REST-API-Aufrufen für Datenaustausch.
Mehrdimensionale Arrays und Zeiger in C++
Lernen Sie mehrdimensionale Arrays und Zeiger in C++, einschließlich Speicherlayout, Indizierung und Pointer-Arithmetik.
Der this-Zeiger in C++
Lernen Sie den this-Zeiger in C++ kennen, einschließlich Selbstreferenz von Objekten und Methodenverkettung.
Konstruktoren, Destruktoren und this in C#
Lernen Sie Konstruktoren, Destruktoren und das Schlüsselwort this in C# zur Verwaltung des Objektlebenszyklus.
Arrays (Felder) in C#
Lernen Sie Arrays in C#, inklusive Deklaration, Indexzugriff, Schleifen und typischer Array-Operationen mit Beispielen.
Interop in C# (Arbeiten mit C/C++-Bibliotheken)
Lernen Sie Interop in C#, um mit C/C++-Bibliotheken zu arbeiten, einschließlich P/Invoke und unmanaged Code.
Datei-IO und Stream-API in C#
Lernen Sie Datei-IO und die Stream-API in C#, um Dateien effizient zu lesen und zu schreiben.
Operatorüberladung in C++
Lernen Sie Operatorüberladung in C++, um Operatoren für eigene Klassen anzupassen und effizient zu nutzen.
Structs in C# – Unterschiede zu Klassen
Erfahren Sie die Unterschiede zwischen Structs und Klassen in C# in Bezug auf Speicher, Vererbung und Performance.
Typumwandlungen in C#
Erlernen Sie Typumwandlungen in C#, einschließlich impliziter und expliziter Konvertierung sowie Parse-, TryParse- und Convert-Methoden.
Dependency Injection Grundlagen in C#
Lernen Sie die Grundlagen von Dependency Injection in C#, um Abhängigkeiten zu verwalten und lose Kopplung zu erreichen.
C# Schleifen (for, foreach, while, do-while)
Lernen Sie die Verwendung von for-, foreach-, while- und do-while-Schleifen in C#, um wiederholte Abläufe effizient umzusetzen.
FluentValidation in C# verwenden
Lernen Sie FluentValidation in C#, um saubere und wartbare Validierungsregeln zu erstellen.
Speicherverwaltung und Garbage Collector in C#
Lernen Sie Speicherverwaltung und Garbage Collector in C#, um Objektlebenszyklen und Speicherbereinigung zu verstehen.
Einführung in Entity Framework Core in C#
Lernen Sie die Grundlagen von Entity Framework Core in C#, einschließlich DbContext und Datenbankoperationen.
Dynamische Speicherverwaltung in C++: new und delete
Lernen Sie die dynamische Speicherverwaltung in C++ mit new und delete für eine sichere Speicherverwaltung.
Neueste Beispiele
Atomisches Schreiben von Dateien in .NET: Unvollständige Dateien verhindern
Schreiben Sie Inhalte zuerst in eine temporäre Datei und ersetzen oder verschieben Sie diese anschließend atomar, um unvollständige Dateien zu vermeiden.
Idempotency-Key in ASP.NET Core (.NET 8): Doppelte POST-Anfragen verhindern
POST sicher wiederholen: Idempotency-Key aus Header lesen, erste Antwort speichern und bei Duplikaten identisch zurückgeben—keine doppelten Inserts.
Sicheres Sortieren & Filtern in ASP.NET Core: Query Builder mit Whitelist
?sort=name,-createdAt&filter=country:TR,status:active sicher parsen: erlaubte Felder whitelisten und auf Expressions/SQL-Spalten mappen—kein dynamisches Injection-Risiko.
ASP.NET Core Validierungsfehler: ModelState in { field, message }[] normalisieren
Normalisieren Sie ModelState-Fehler mit InvalidModelStateResponseFactory in ein einfaches { field, message }[]-Format, damit Clients Validierung einheitlich darstellen können.
Ordner als ZIP erstellen mit Fortschritt in .NET (WPF-Beispiel)
Einen Ordner in .NET als ZIP erstellen und den Fortschritt per ZipArchive und IProgress sauber in einer WPF ProgressBar anzeigen.
Standardisiertes API-Response-Format in ASP.NET Core (Result)
Standardisieren Sie Erfolgs- und Fehlerantworten in ASP.NET Core mit einem Result
Hervorgehobene Beispiele
Saubere Pagination in ASP.NET Core Web API (Header + Link)
Geben Sie nur Items im Body zurück und verschieben Sie Pagination-Metadaten in Header. Nutzen Sie den RFC 5988 Link-Header für next/prev Navigation.
Ordner als ZIP erstellen mit Fortschritt in .NET (WPF-Beispiel)
Einen Ordner in .NET als ZIP erstellen und den Fortschritt per ZipArchive und IProgress sauber in einer WPF ProgressBar anzeigen.
ProblemDetails in ASP.NET Core: Saubere Fehlerantworten mit TraceId
Exceptions auf RFC 7807 ProblemDetails abbilden und eine traceId zurückgeben, damit Clients konsistente Fehler sehen und Logs eindeutig zuordenbar sind.
IP-basiertes Rate Limiting in ASP.NET Core (.NET 8): 429 Too Many Requests
Begrenzen Sie Requests pro IP mit dem eingebauten Rate Limiting in .NET 8 und geben Sie bei Überschreitung 429 inkl. Retry-After zurück.
Atomisches Schreiben von Dateien in .NET: Unvollständige Dateien verhindern
Schreiben Sie Inhalte zuerst in eine temporäre Datei und ersetzen oder verschieben Sie diese anschließend atomar, um unvollständige Dateien zu vermeiden.
ASP.NET Core Validierungsfehler: ModelState in { field, message }[] normalisieren
Normalisieren Sie ModelState-Fehler mit InvalidModelStateResponseFactory in ein einfaches { field, message }[]-Format, damit Clients Validierung einheitlich darstellen können.
Standardisiertes API-Response-Format in ASP.NET Core (Result)
Standardisieren Sie Erfolgs- und Fehlerantworten in ASP.NET Core mit einem Result
Idempotency-Key in ASP.NET Core (.NET 8): Doppelte POST-Anfragen verhindern
POST sicher wiederholen: Idempotency-Key aus Header lesen, erste Antwort speichern und bei Duplikaten identisch zurückgeben—keine doppelten Inserts.
Sicheres Sortieren & Filtern in ASP.NET Core: Query Builder mit Whitelist
?sort=name,-createdAt&filter=country:TR,status:active sicher parsen: erlaubte Felder whitelisten und auf Expressions/SQL-Spalten mappen—kein dynamisches Injection-Risiko.