Architektur von C# (.NET)-Anwendungen: Vom Monolithen zu Microservices
Architektur von C# (.NET)-Anwendungen: Vom Monolithen zu Microservices
Zusammenfassung:
Dieses Buch ist nicht nur eine Sammlung von Codebeispielen, sondern ein umfassender Leitfaden zur Erstellung von Softwaresystemen auf der C# (.NET)-Plattform. Der Autor, Alexey Smirnov, teilt seine langjährige Erfahrung im Design von Unternehmenslösungen und zeigt, wie man chaotischen Code in eine klare, skalierbare und testbare Architektur verwandelt.
Das Buch beginnt mit den Grundlagen: Sie werden verstehen, was eine „gute“ Architektur von einer „schlechten“ unterscheidet, und die wichtigsten Prinzipien SOLID, DRY und YAGNI erlernen. Dann tauchen Sie in die Welt der Entwurfsmuster (GoF) ein und erfahren, wie Sie diese im Kontext von .NET anwenden – von einfachen Fabriken bis hin zu komplexen Verantwortungsketten.
- Schichtenarchitektur – wie man eine Anwendung richtig in Ebenen (Presentation, Business, Data Access) unterteilt und „Spaghetti-Code“ vermeidet.
- Abhängigkeitsinversion und DI-Container – Konfiguration von Autofac, Microsoft.Extensions.DependencyInjection und Testen von Komponenten.
- Microservices-Architektur – wann Microservices benötigt werden, wie man ihre Interaktion über RabbitMQ, gRPC oder REST organisiert.
- Domain-Driven Design (DDD) – Modellierung komplexer Geschäftsprozesse mit Aggregaten, Value Objects und Repositories.
- Asynchronität und Leistung – korrekte Verwendung von async/await, TPL Dataflow und Verarbeitung großer Datenmengen.
- Sicherheit und Überwachung – Implementierung von OpenID Connect, Serilog, Application Insights und Health Checks.
Für wen ist dieses Buch geeignet? In erster Linie für fortgeschrittene C#-Entwickler (2–5 Jahre Erfahrung), die bereits Code schreiben, aber auf die Ebene eines Architekten aufsteigen möchten. Sie lernen nicht nur, Funktionen zu implementieren, sondern Entscheidungen zu treffen, die die gesamte Projektstruktur beeinflussen. Das Buch ist auch nützlich für Teamleiter und technische Manager, die die Entwicklungsansätze in ihrem Team standardisieren möchten.
Nach der Lektüre werden Sie in der Lage sein:
- Anwendungen von Grund auf zu entwerfen und den geeigneten Architekturstil (Monolith, Microservices, modularer Monolith) auszuwählen.
- Legacy-Code zu refaktorisieren, ohne Geschäftsprozesse zu unterbrechen.
- Tests (Unit, Integration, End-to-End) für komplexe Architekturentscheidungen zu schreiben.
- Ihre Architekturentscheidungen gegenüber dem Kunden und dem Team zu begründen.
Das Buch enthält zahlreiche praktische Beispiele in C# (.NET 8), fertige Diagramme (C4-Modell) und Codevorlagen. Alle Quelldateien sind im GitHub-Repository verfügbar. Dies ist nicht nur ein Lehrbuch – es ist ein Nachschlagewerk für diejenigen, die Systeme bauen, die jahrelang Bestand haben werden.
Empfehlungen
Testen von Java-Anwendungen: Von Unit-Tests bis zu Integrationsszenarien
Asynchrones PHP: Das vollständige Handbuch
API-Entwicklung mit Kotlin: Von den Grundlagen bis zu Microservices
API-Entwicklung mit C# (.NET): Von den Grundlagen bis zur Produktion
Testen von Go (Golang)-Anwendungen: Von Unit-Tests bis zur Produktion
C# (.NET) und Microservices: Ein praktischer Leitfaden