Programmierung in C# 10
Programmierung in C# 10
Zusammenfassung:
Einleitung
Das Buch „Programming C# 10“ (in der deutschen Übersetzung „Programmierung in C# 10“) von Ian Griffiths erschien 2022 und wurde sofort zu einem der maßgeblichsten Handbücher für die neueste Version der Sprache C# und der Plattform .NET 6. Es ist nicht nur ein weiteres Lehrbuch – es ist ein tiefer Einstieg in die modernen Möglichkeiten von C#, geschrieben von einem anerkannten Experten, der an der Entwicklung der Sprache selbst beteiligt war. Das Buch mit 738 Seiten deckt alle wesentlichen Aspekte ab: von der grundlegenden Syntax bis zu fortgeschrittenen Themen wie asynchrone Programmierung, LINQ, Reflexion und Interaktion mit nativem Code.
Worum es in dem Buch geht
Ian Griffiths führt den Leser konsequent von den Grundlagen zu komplexen Konzepten. Der erste Teil widmet sich den Fundamenten: Datentypen, Kontrollstrukturen, Klassen und Strukturen. Anschließend geht der Autor zur objektorientierten Programmierung, Vererbung, Schnittstellen und Generics über. Besonderes Augenmerk liegt auf den Neuerungen von C# 10: record struct, global using directives, file-scoped namespaces und Verbesserungen bei der Arbeit mit pattern matching. Die zweite Hälfte des Buches behandelt .NET 6: Collections, LINQ, Asynchronität, parallele Programmierung, Dateiarbeit, Serialisierung, Reflexion und Interaktion mit COM. Das Buch endet mit einem Kapitel über Roslyn – den Compiler als Dienst –, das dem Leser ein Verständnis für die interne Funktionsweise von C# vermittelt.
Für wen ist dieses Buch geeignet
Das Buch richtet sich an Entwickler, die bereits mit den Grundlagen von C# vertraut sind (oder einer anderen C-ähnlichen Sprache) und ihre Kenntnisse vertiefen möchten. Anfänger, die gerade erst mit dem Programmieren beginnen, werden es schwer haben – der Autor setzt voraus, dass der Leser grundlegende Konzepte wie Variablen, Schleifen und Funktionen bereits versteht. Für diejenigen jedoch, die von C# 8/9 auf C# 10 umsteigen oder .NET 6 auf professionellem Niveau erlernen möchten, ist dies die ideale Wahl.
Was der Leser lernen wird
- Moderne Syntax von C# 10: record struct, global usings, file-scoped namespaces, verbessertes pattern matching.
- Tiefes Verständnis von Typen: Wert- und Referenztypen, nullable-Typen, Span
und Memory . - Asynchrone Programmierung: async/await, Task, ValueTask, IAsyncEnumerable, Channels.
- LINQ und Datenverarbeitung: von einfachen Abfragen bis zur Erstellung eigener LINQ-Anbieter.
- Parallelität und Multithreading: Task Parallel Library, Concurrent Collections, Sperren und Synchronisation.
- Reflexion und Metaprogrammierung: Attribute, Codegenerierung zur Laufzeit, Ausdrucksbäume.
- Roslyn: Nutzung des Compilers als Dienst zur Analyse und Modifikation von Code.
- Interaktion mit nativem Code: P/Invoke, COM-Interop, unsafe-Code.
Stärken des Buches
Das Erste, was ins Auge fällt, ist die Tiefe der Darstellung. Ian Griffiths listet nicht nur die Sprachfunktionen auf, sondern erklärt, warum sie genau so aufgebaut sind, welche Probleme sie lösen und wie man sie richtig anwendet. Beispielsweise ist das Kapitel über Asynchronität eines der besten, das ich gesehen habe: Der Autor analysiert detailliert das Speichermodell, die Taskplaner und die Fallstricke. Zweitens – die Aktualität: Das Buch erschien fast zeitgleich mit der Veröffentlichung von .NET 6, sodass alle Beispiele auf der aktuellen Plattformversion funktionieren. Drittens – die praktische Ausrichtung: Jedes Kapitel enthält zahlreiche Codebeispiele, die sofort ausprobiert werden können. Schließlich – der Schreibstil: Griffiths schreibt in einer lebendigen, verständlichen Sprache, vermeidet übermäßige Akademisierung, ohne dabei an Genauigkeit einzubüßen.
Empfehlung
Das Buch ist nützlich für:
- C#-Entwickler, die ihre Kenntnisse auf Version 10 und .NET 6 aktualisieren möchten.
- Java- oder C++-Programmierer, die zu C# wechseln – das Buch hilft, die Idiome und Besonderheiten schnell zu erlernen.