C#
.NET
Backend-Entwicklung

Fortgeschrittenes C# und .NET 10

Dreitägiger Intensiv-Workshop für erfahrene .NET-Ingenieure: fortgeschrittene C# 14-Features, Performance-Muster, Source Generators, Async/Parallel-Workloads und .NET 10 Runtime-Verbesserungen — mit praxisnahen Benchmarking- und Diagnostics-Labs.

Fortgeschrittenes C# und .NET 10 (C# 14)

Dauer: 3 Tage

Praxisorientierter Workshop für erfahrene .NET-Ingenieure zur Beherrschung von modernem C# (bis C# 14) und .NET 10. Fokus auf fortgeschrittene Sprachkonstrukte, Performance-Muster, Runtime-Features und Erstellen/Konsumieren von Source Generators.

Zielgruppe

  • Senior C#/.NET-Entwickler und Architekten
  • Teams, die auf .NET 10 upgraden und neue C# 14-Funktionen übernehmen
  • Ingenieure, die hochperformante Services, Bibliotheken oder Tooling erstellen

Voraussetzungen

  • Starke C#/.NET-Erfahrung; vertraut mit Generics, async/await, LINQ
  • .NET 8/9/10 SDKs, Visual Studio/VS Code
  • Vertrautheit mit Unit Testing und Profiling-Grundlagen

Lernziele

  • Fortgeschrittene C#-Konstrukte für Korrektheit, Klarheit und Performance anwenden
  • Neue C# 14-Features effektiv und sicher nutzen
  • Source Generators, Analyzers und inkrementelle Pipelines erstellen und konsumieren
  • Allokationen, Memory Layout und Async/Parallel Workloads optimieren
  • Moderne .NET 10 Runtime-Bibliotheken, Hosting und Diagnostics integrieren

Agenda

  1. Moderne C#-Grundlagen-Auffrischung
    • Spans, Ref Structs, ref-Felder
    • Pattern Matching-Updates; Property-/Switch-Patterns
    • Records, Required Members, Collection Expressions
  2. C# 14-Highlights
    • Primary Constructors (Klassen/Structs)
    • Collection Expressions in mehr Kontexten; params Collections
    • Interceptors (falls verfügbar), using Aliases, Readonly Ref Extensions
    • Default-Parameter für Lambdas; Exhaustiveness-Verbesserungen
  3. Fortgeschrittenes Async und Concurrency
    • ValueTask, Cancellation, Timeouts; AsyncLocal-Vorsicht
    • Async Streams; Parallel.ForEachAsync, Channels
    • Source-generierte Async-APIs; Durchsatz vs. Latenz
  4. Performance und Memory
    • stackalloc/spans/pools; Memory<T>/ReadOnlyMemory<T>
    • Unsafe mit Leitplanken; SIMD Intrinsics; Array Pooling
    • CollectionsMarshal, StringBuilder vs. string.Create, UTF-8 Literals/Parser
  5. Source Generators und Analyzers
    • Roslyn-Architektur; inkrementelle Pipelines (Syntax/Semantic)
    • Caching, inkrementelle Schritte, Allokationen vermeiden
    • Generatoren erstellen/packen; Konsum in Apps/Libs
  6. .NET 10 Runtime/Plattform-Updates
    • BCL-Ergänzungen; JIT/GC-Verbesserungen
    • Trimming/AOT-Bereitschaft; Native AOT-Einschränkungen
    • Hosting-Updates; Logging/Metrics/Tracing (OpenTelemetry, dotnet monitor, EventPipe, dotnet-counters)
  7. Diagnostics und Testing
    • Unit/Integration-Tests für moderne C#-Features
    • Testing von Source Generators; Analyzer-Test-Harness
    • Benchmarking (BenchmarkDotNet), Flame Graphs, Perf Traps (Boxing, Sync-over-Async, versteckte Allokationen)

Praktische Übungen (Beispiele)

  • Refaktorierung zu Primary Constructors und Collection Expressions; Lesbarkeit und Allokationen verifizieren
  • Implementierung eines benutzerdefinierten inkrementellen Source Generators und Analyzers; Unit Tests hinzufügen
  • Hinzufügen eines source-generierten Serializers oder Client-Proxys und Messung des Startup/Runtime-Impacts
  • Optimierung einer CPU-gebundenen Routine mit SIMD und Spans; Benchmark vorher/nachher
  • Erstellen einer begrenzten Channel-basierten Pipeline und Tracing mit OpenTelemetry über das Aspire Dashboard

Ergebnisse

Die Teilnehmer sind in der Lage, fortgeschrittene C# 14/.NET 10-Codebasen zu entwerfen und bereitzustellen, Source Generators sicher zu nutzen, Performance-Probleme zu diagnostizieren und moderne Sprach-/Runtime-Features für wartbare, hochperformante Lösungen anzuwenden.

An unhandled error has occurred. Reload 🗙