Opleiding: Cursus Advanced C# Programmeren

In de cursus Advanced C# Programming van SpiralTrain verdiepen deelnemers hun kennis van moderne C# features zoals asynchrone programmeren, LINQ, dependency injection, reflection en prestatieoptimalis

Advanced C# Language Features

De cursus begint met geavanceerde taalfeatures zoals nullable reference types, records, pattern matching, lokale functies, dynamic types en geavanceerde stringmanipulaties.

Delegates, Events en Lambdas

In deze module verdiepen deelnemers zich in delegates, events, lambda-expressies, multicast delegates, expression trees en het gebruik van asynchrone delegates.

Generics en Collecties

De focus ligt op het gebruik van generics, constraints, covariantie en contravariantie, aangepaste collecties, immutable en concurrent collections en geavanceerd gebruik van dictionaries.

LINQ en Functioneel Programmeren

Deelnemers leren over LINQ query- en methodsyntax, deferred execution, custom operators, en de basisprincipes van functioneel programmeren zoals immutability en hogere-orde functies.

Asynchrone en Parallelle Programmeren

Deze module behandelt async/await, de Task Parallel Library (TPL), ValueTask optimalisaties, cancellation tokens, deadlock voorkomen en het gebruik van IAsyncEnumerable.

Dependency Injection en Testen

Deelnemers leren dependency injection patronen, mocken en testen met frameworks als Moq, het toepassen van TDD en het correct beheren van services in .NET Core applicaties.

Reflectie, Attributen en Dynamisch Programmeren

In deze module wordt gewerkt met reflection, het dynamisch laden van assemblies, het gebruik van attributen, het creëren van dynamische objecten en late binding.

Geheugenbeheer en Prestatieoptimalisatie

Deelnemers krijgen inzicht in garbage collection, dispose patterns, geheugenprofilering, object pooling, stackalloc gebruik en het optimaliseren van asynchrone code.

Geavanceerde Onderwerpen en Best Practices

Tot slot behandelt deze module exception handling best practices, logging, gebruik van source generators, globale usings, interoperabiliteit met native code en het schrijven van onderhoudbare code.

Doelgroep Cursus Advanced C# Programming

De cursus Advanced C# Programming is bedoeld voor ervaren C# developers die hun kennis willen verdiepen en optimaal gebruik willen maken van de nieuwste features in moderne C# versies.

Voorkennis Cursus Advanced C# Programming

Grondige kennis van C# en .NET, ervaring met objectgeoriënteerd programmeren en basiskennis van asynchrone programmeertechnieken zijn vereist.

Uitvoering Training Advanced C# Programming

De training combineert interactieve theorie met live demonstraties en uitgebreide hands-on labs onder begeleiding van een ervaren trainer.

Certificaat Advanced C# Programming

Na het succesvol afronden van de cursus ontvangen deelnemers een certificaat van deelname aan de cursus Advanced C# Programming.

Modules

Module 1: Advanced C# Features

  • Nullable Reference Types
  • Pattern Matching Enhancements
  • Records and Value-Based Equality
  • Tuples and Deconstruction
  • Local Functions
  • Target-Typed New Expressions
  • Default Interface Methods
  • Dynamic Types
  • Using Span and Memory
  • Advanced String Manipulation

Module 2: Delegates and Lambdas

  • Delegates Deep Dive
  • Multicast Delegates
  • Events and Event Handling
  • Anonymous Methods
  • Lambda Expressions
  • Expression Trees
  • Func, Action, Predicate
  • Event Aggregator Pattern
  • Asynchronous Delegates
  • EventHandler Usage

Module 3: Generics

  • Generic Methods and Classes
  • Generic Constraints
  • Covariance and Contravariance
  • Collections Overview
  • IEnumerable, ICollection, IList
  • Custom Generic Collections
  • Immutable Collections
  • Concurrent Collections
  • Collection Initializers
  • Advanced Dictionary Usage

Module 4: Functional Programming

  • Introduction to LINQ
  • Query Syntax vs Method Syntax
  • LINQ to Objects
  • Deferred vs Immediate Execution
  • Custom LINQ Operators
  • Func and Action in LINQ
  • Functional Programming Concepts
  • Immutability in C#
  • Higher-Order Functions
  • Pipeline and Fluent APIs

Module 5: Asynchronous Programming

  • Async and Await Deep Dive
  • Task Parallel Library (TPL)
  • ValueTask and Memory Optimization
  • Parallel.For and Parallel LINQ
  • Cancellation Tokens
  • Exception Handling in Async Code
  • SynchronizationContext
  • Deadlocks and Best Practices
  • Channels and Dataflow
  • IAsyncEnumerable and Async Streams

Module 6: Dependency Injection

  • Principles of DI
  • Service Lifetimes
  • Constructor Injection
  • Method Injection
  • Property Injection
  • Mocking and Stubbing
  • Using Moq and NSubstitute
  • Unit Testing Best Practices
  • Test-Driven Development
  • DI in .NET Core

Module 7: Dynamic Programming

  • Reflection Basics
  • Loading Assemblies Dynamically
  • Reading Metadata
  • Custom Attributes
  • Attribute Usage and Creation
  • Dynamic Object Manipulation
  • ExpandoObject
  • Dynamic Keyword
  • Late Binding
  • Reflection Scenarios

Module 8: Memory Management

  • Garbage Collection in Depth
  • Dispose Pattern and IDisposable
  • Memory Profiling Tools
  • Avoiding Memory Leaks
  • Object Pooling
  • Stackalloc and Span for Performance
  • Performance Profiling
  • Async Performance Optimization
  • BenchmarkDotNet for Microbenchmarks
  • High-Performance C# Coding

Module 9: Advanced Topics

  • Best Practices for Exceptions
  • Logging and Monitoring
  • Code Analysis Tools (Roslyn)
  • Source Generators
  • Global Using Statements
  • Nullable Contexts Best Practices
  • Minimal APIs
  • Working with Files and Streams
  • Native Code Interoperability
  • Writing Clean Code
Meer...
€2.999
ex. BTW
Aangeboden door
SpiralTrain
Onderwerp
Linq
C/C++
Niveau
Duur
4 dagen
Looptijd
24 dagen
Taal
nl
Type product
cursus
Lesvorm
Klassikaal
Aantal deelnemers
Max: 12
Tijdstip
Overdag
Tijden en locaties
Amsterdam
di 15 jul. 2025
Eindhoven
di 15 jul. 2025
Houten
di 15 jul. 2025
Online
di 15 jul. 2025
Rotterdam
di 15 jul. 2025
Zwolle
di 15 jul. 2025
Amsterdam
di 16 sep. 2025
Eindhoven
di 16 sep. 2025
Houten
di 16 sep. 2025
Online
di 16 sep. 2025
Rotterdam
di 16 sep. 2025
Zwolle
di 16 sep. 2025
Amsterdam
di 18 nov. 2025
Eindhoven
di 18 nov. 2025
Houten
di 18 nov. 2025
Online
di 18 nov. 2025
Rotterdam
di 18 nov. 2025
Zwolle
di 18 nov. 2025
Amsterdam
di 20 jan. 2026
Eindhoven
di 20 jan. 2026
Houten
di 20 jan. 2026
Online
di 20 jan. 2026
Rotterdam
di 20 jan. 2026
Zwolle
di 20 jan. 2026
Amsterdam
di 17 mrt. 2026
Eindhoven
di 17 mrt. 2026
Houten
di 17 mrt. 2026
Online
di 17 mrt. 2026
Rotterdam
di 17 mrt. 2026
Zwolle
di 17 mrt. 2026
Amsterdam
di 19 mei 2026
Eindhoven
di 19 mei 2026
Houten
di 19 mei 2026
Online
di 19 mei 2026
Rotterdam
di 19 mei 2026
Zwolle
di 19 mei 2026
Amsterdam
di 21 jul. 2026
Eindhoven
di 21 jul. 2026
Houten
di 21 jul. 2026
Online
di 21 jul. 2026
Rotterdam
di 21 jul. 2026
Zwolle
di 21 jul. 2026
Amsterdam
di 15 sep. 2026
Eindhoven
di 15 sep. 2026
Houten
di 15 sep. 2026
Online
di 15 sep. 2026
Rotterdam
di 15 sep. 2026
Zwolle
di 15 sep. 2026
Amsterdam
di 17 nov. 2026
Eindhoven
di 17 nov. 2026
Houten
di 17 nov. 2026
Online
di 17 nov. 2026
Rotterdam
di 17 nov. 2026
Zwolle
di 17 nov. 2026
Amsterdam
di 19 jan. 2027
Eindhoven
di 19 jan. 2027
Houten
di 19 jan. 2027
Online
di 19 jan. 2027
Rotterdam
di 19 jan. 2027
Zwolle
di 19 jan. 2027
Amsterdam
di 16 mrt. 2027
Eindhoven
di 16 mrt. 2027
Houten
di 16 mrt. 2027
Online
di 16 mrt. 2027
Rotterdam
di 16 mrt. 2027
Zwolle
di 16 mrt. 2027
Amsterdam
di 18 mei 2027
Eindhoven
di 18 mei 2027
Houten
di 18 mei 2027
Online
di 18 mei 2027
Rotterdam
di 18 mei 2027
Zwolle
di 18 mei 2027
Amsterdam
di 20 jul. 2027
Eindhoven
di 20 jul. 2027
Houten
di 20 jul. 2027
Online
di 20 jul. 2027
Rotterdam
di 20 jul. 2027
Zwolle
di 20 jul. 2027
Amsterdam
di 21 sep. 2027
Eindhoven
di 21 sep. 2027
Houten
di 21 sep. 2027
Online
di 21 sep. 2027
Rotterdam
di 21 sep. 2027
Zwolle
di 21 sep. 2027
Amsterdam
di 16 nov. 2027
Eindhoven
di 16 nov. 2027
Houten
di 16 nov. 2027
Online
di 16 nov. 2027
Rotterdam
di 16 nov. 2027
Zwolle
di 16 nov. 2027
Amsterdam
di 18 jan. 2028
Eindhoven
di 18 jan. 2028
Houten
di 18 jan. 2028
Online
di 18 jan. 2028
Rotterdam
di 18 jan. 2028
Zwolle
di 18 jan. 2028
Amsterdam
di 21 mrt. 2028
Eindhoven
di 21 mrt. 2028
Houten
di 21 mrt. 2028
Online
di 21 mrt. 2028
Rotterdam
di 21 mrt. 2028
Zwolle
di 21 mrt. 2028
Amsterdam
di 16 mei 2028
Eindhoven
di 16 mei 2028
Houten
di 16 mei 2028
Online
di 16 mei 2028
Rotterdam
di 16 mei 2028
Zwolle
di 16 mei 2028
Keurmerken aanbieder
NRTO
UWV scholingsvoucher