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