C# Expert

30.11.–2.12.2026 | remote: Etäkoulutus, Etäkoulutus

Ohjelma

Maanantaina 30.11.

09:00

The .NET Ecosystem and Source Generators

  • .NET Framework vs. .NET Core vs. .NET 
  • Top-level statements and .NET Standard 
  • Roslyn and analyzers 
  • Code fixes and source generators 
10:30

Break

10:45

Visual Studio and Editor Configuration

  • Dev tunnels 
  • Hot reload 
  • HTTP files 
  • EditorConfig 
  • Controlling warnings and errors 
12:00

Lunch Break

13:00

From Delegates to Lambda Expressions

  • Delegates and anonymous methods 
  • Lambda expressions 
  • Func<T> and Action<T> 
  • Refactoring using lambda expressions 
14:15

Coffee Break

14:30

Advanced and Optimized Lambda Expressions

  • Closures 
  • Common problems with closures 
  • Recent lambda expression improvements 
  • Local functions 
15:30

Summary and Key Takeaways

  • Review of the day’s key concepts 
  • Questions and discussion 
16:00

See you tomorrow! The first training day ends

Tiistaina 1.12.

09:00

Value Tuples and Pattern Matching

  • Classic generic tuples and anonymous types 
  • Value Tuples and deconstruction 
  • Pattern matching 
  • Switch statements and null checks 
10:30

Break

10:45

Switch Expressions and Nullable Reference Types

  • Switch expressions 
  • Discards and patterns 
  • Nullable value types and non-nullable reference types 
  • The null-forgiving operator 
  • Null-coalescing assignment operator and nullable attributes 
12:00

Lunch Break

13:00

Value Objects

  • Primitive obsession 
  • Implementing value objects 
  • Equality, comparing and sorting 
  • Overriding ToString() 
  • Immutability and always-valid objects 
14:15

Coffee Break

14:30

Records and Immutable Operations

  • Immutable operations 
  • Positional records 
  • Records vs. manually created value objects 
  • Nondestructive mutation 
  • Extending records 
  • Struct and class records 
15:30

Summary and Key Takeaways

  • Review of the day’s key concepts 
  • Questions and discussion 
16:00

See you tomorrow! The second training day ends

Keskiviikkona 2.12.

09:00

Asynchronous Programming with C#

  • Tasks 
  • Waiting for tasks 
  • Cancellation tokens 
  • Async and await 
  • Practical considerations for asynchronous code 
10:30

Break

10:45

Dynamic Programming

  • Dynamic types 
  • ExpandoObject 
  • Dynamic binding 
  • When and when not to use dynamic features 
12:00

Lunch Break

13:00

Reflection

  • Working with types 
  • Querying and inspecting applications 
  • Creating instances of types 
  • Pros and cons of using reflection 
14:15

Coffee Break

14:30

What’s New in C# 12, 13, and 14

  • Primary constructors 
  • Collection expressions 
  • TimeProvider 
  • Modern C# features in practice 
15:30

Course Summary and Key Takeaways

  • Review of the key concepts from all three days 
  • Applying modern C# features in real-world development 
  • Questions and discussion 
16:00

Thank you! The training ends