Öppna kurser
C# Expert
Expanded with new content and updated for C# 12 and .NET 8, this three day course takes you on an intensive deep dive into the advanced concepts and tools of C# in .NET.
Utbildningsmål
Crafted with over 20 years of experience, this course is packed with presentations, live demonstrations and hands-on exercises that equip you with the best practices and tools for making your life easier as a developer, while helping you to create exceptional modern applications. With a range of materials, demonstrations and exercises with access to a seasoned instructor’s expertise, the course aims to take you on a deep dive that takes your understanding to new heights. Beyond the technical skills (see below), you will learn new strategies to keep your code clean, maintainable and reliable. You will be better equipped to tackle complex coding challenges with more agility and tools, enabling you to build state-of-the-art applications.
Målgrupp
This course is for developers that want to master the advanced features of C#, enabling them to write applications that deliver more value, performance and scalability using the latest tools and techniques that are being utilized today. The course covers the latest features and inner workings of C# 12 and .NET 8, but is also applicable to developers using older versions of C#.
Förkunskaper
This course assumes you have worked as a C# developers for at least a year, and that you have the skills covered in our C# Fundamentals course. You should be comfortable using Visual Studio, Lambda expressions, and LINQ.
Innehåll
- The .NET ecosystem
.NET Framework vs. .NET Core vs. .NET
Top-level statements
.NET Standard - Source Generators
Roslyn
Analyzers
Code-fixes
Source generators - Visual Studio
Editor config
Dev tunnels
Hot reload
HTTP files - From Delegates to Lambda
Delegates
Anonymous methods
Lambda expressions
Func<T> and Action<T> - Value Tuples
Classic generic tuples
Anonymous types
Value Tuples
Deconstruct - Pattern matching
Pattern matching with the if and switch statement.
Null checks - Switch Expressions
Discard
Patterns - Non-nullable reference types
Nullable value types
Non-nullable reference types
The null-forgiving operator
Null-coalescing assignment operator
Nullable attributes - Value objects
Primitive obsession
Implementing value object
Equality
Comparing and sorting
Overriding ToString()
Always valid and Immutability
Immutable operations - Records
Positional records
Records vs manually created value objects
Nondestructive mutation
Extending records
Struct and class records - Async
Tasks
Waiting for tasks
Cancellation tokens
Async/await - C# 12
Primary constructors
Collection expressions
TimeProvider - Advanced lambda expressions
Refactoring using lambda expressions
Closures
Common problems with closures
Recent lambda expressions improvements
Local functions - Dynamic
Dynamic types
ExpandoObjects
Dynamic binding - Reflection
Working with types
Querying and inspecting our applications
Creating instances of types
Pros and cons of using reflection - and much more!
Kursen levereras genom utbildningspartner: TN Datakonsult