Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 3 Min.

Testbarkeit ist oberstes Gebot: Dennis Doomen über Enterprise-Anwendungen

Dennis Doomen spricht im DWX-Interview über Architekturprinzipien für .NET-Enterprise-Anwendungen. Warum gute Modularität weniger mit Abstraktionen und mehr mit gesundem Menschenverstand zu tun hat – und welche Tools dafür sorgen, dass Qualität keine Glückssache bleibt.
Dennis Doomen
© Sofija De Mitri, Patrizio De Mitri, Event Wave

Wenn Dennis Doomen über Softwarearchitektur spricht, wird es schnell konkret. Testbarkeit ist für ihn kein Add-on – sie ist der Kern. „Ich will, dass Entwickler den Mut haben, Änderungen am Code vorzunehmen, ohne Angst zu haben, etwas kaputtzumachen“, sagt er im Interview auf der DWX.

Deshalb steht für ihn fest: Wer Systeme baut, muss sie testbar bauen. Und zwar von Anfang an, am besten gleich mit Test-Driven Development (TDD). Alles andere sei eine Einladung zu Wartungs-Albträumen.

Grenzen ziehen statt Interface-Overkill

In großen .NET-Systemen kommt es vor allem auf sinnvolle Modularisierung an. Das Problem: Viele Entwickler setzen vorschnell auf Interfaces, um Abhängigkeiten aufzulösen – und schaffen damit neue Komplexität. „Decoupling ist einfach“, sagt Doomen. „Aber sinnvolle Grenzen zu finden, ist schwer.“ Funktionale Gruppierung sei hier oft der bessere Weg.

Auch beim Thema CQRS (Command Query Responsibility Segregation), Domain-Driven Design (DDD) und Event Sourcing plädiert er für Maß und Mitte: CQRS sei beispielsweise in komplexeren Projekten hilfreich. Event Sourcing? Nur, wenn viele Beteiligte gleichzeitig Daten ändern und hohe Performance gefragt ist. „Es ist ein mächtiges Muster – aber eben auch komplex.“

„Entwickler lieben Abstraktionen. Aber das führt oft dazu, dass der Code nicht mehr zu verstehen ist – nicht mal von denen, die ihn geschrieben haben.“
Doomen_Dennis3.jpg
Dennis Doomen

Tooling: Mehr als nur Linter

Was braucht man, um Qualität durchzusetzen? Klar: GitHub für saubere Versionsverwaltung. Atlassian Confluence für dokumentierte Architekturprinzipien. Roslyn-Analyzers und EditorConfig für Regelwerke im Code. Und für die Frontend-Fraktion: ESLint. Wer mag, ergänzt das Ganze mit SonarQube.

Und dann wäre da noch das Thema „Screaming Architecture“ – ein Codeaufbau, der ohne lange Doku zeigt, was Sache ist. Klar gegliederte Ordnerstrukturen helfen dabei, die Architektur nicht nur zu denken, sondern zu leben.

Von Anfang an: Resilienz & Observability

Resilienz und Konfigurierbarkeit? Dank ASP.NET Core und Azure kein Hexenwerk. Schwieriger sei da schon das Thema Observability. Denn Logging und Exception-Handling werden oft stiefmütterlich behandelt – mit dem Resultat, dass Application Insights mehr Fragen aufwirft als Antworten gibt. Hier rät Doomen: früh Regeln aufstellen, Logging-Levels definieren, HTTP-Statuscodes standardisieren.

Fazit:

Wer nachhaltige .NET-Anwendungen bauen will, braucht mehr als Framework-Know-how. Es geht um Architektur, Disziplin – und den Mut, es richtig zu machen. Dennis Doomen liefert dafür die Blaupause.

Exklusiver Zugang zu Developer-Wissen, das Du wirklich brauchst!

Die führende deutschsprachige Wissensplattform für professionelle Softwareentwickler:innen

  • Unbegrenzter Zugang zu Developer World
  • Exklusiver Online-Content
  • Digitales Heftarchiv inkl. Codes
Digitales Probeabo
0,00

1 Monat kostenloser Zugang, danach 152,40 € jährlich.

kostenlos testen!
Jahresabo Premium Plus
182,40

12 Monate unbegrenzter Zugang. Jährliche Zahlung.

Printausgabe alle 2 Monate frei Haus

Neueste Beiträge

Window Functions - Acht Kostbarkeiten in T-SQL, Teil 5
Durchblick mit Weitblick: Fensterfunktionen sind nicht nur ein Feature – sie können ein Paradigmenwechsel sein.
6 Minuten
Räumliche Daten mit PostGIS in PostgreSQL - Indizes & Co. in PostgreSQL, Teil 5
Funktionen wie generierte Spalten, LATERAL-Joins und indexbewusste Operatoren ermöglichen in PostGIS räumliche Abfragen, die auch bei zunehmender Komplexität deklarativ, lesbar und performant bleiben.
6 Minuten
BRIN-Indizes in PostgreSQL - Indizes & Co. in PostgreSQL, Teil 4
PostgreSQL mit BRIN vertritt die Idee, dass ein Index unvollkommen sein kann, solange er kostengünstig und in großem Maßstab effektiv ist. So entsteht eine pragmatische Optimierung, die Präzision gegen Einfachheit eintauscht – und dabei gewinnt.
6 Minuten

Das könnte Dich auch interessieren

Was sind Komponenten? - Composite Components 2.0, Teil 8
Softwareprojekte wie mit Lego bauen – dazu muss der Architekt in Komponenten denken.
6 Minuten
15. Jun 2020
Newsletter-System in 20 Minuten - Flow-Designs mit Make
Der passende Dienst kann die Entwicklungszeit immens verkürzen.
20 Minuten
18. Apr 2022
Apache Kafka: Vier Anti-Patterns und wie man sie verhindert - Instaclustr
Der Message Broker Apache Kafka verteilt Schlüssel-Wert-Nachrichten zwischen Anwendungen oder Microservices. Managed-Platform-Anbieter Instaclustr nennt verbreitete Anti-Patterns beim Betrieb von Apache Kafka und wie Entwickler sie verhindern.
4 Minuten
28. Dez 2023
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige