Modern .NET - C# 9

  • 1-2 Days
  • Intermediate
  • Virtual | Classroom
  • £ On Request

Refresh your C# skills with this rapid workshop of all the new language features.

Book For My Team

What your team will learn

Rapidly refresh and update your C# knowledge

Learn all new languages features right up to C# 9

Understand best practices for clean code and execution efficiency

Leverage the new null safety features from C# 8

Overview

If you or your team are new to C# and .NET, why not check out our Fast Track to .NET (C#) course for a more complete introduction.

.NET and C# are rapidly evolving and sometimes it's hard to keep up. In this 1-2 day workshop we can help you fill in the gaps. We cover all the newest language features right up to C# 9 and you simply let us know which topics you want included.

Outline

Introduction

  • The History and Evolution of .NET
  • Platforms, Frameworks and Targeting
  • .NET Standard
  • .NET Core
  • .NET 5.0
  • Installing the SDK and CLI
  • Extending the Command Line
  • New Core Project Structure
  • Managing projects via the CLI

Data Structures

  • Classes vs structs
  • Modern property syntax including init (C# 9)
  • Expression Bodied Members (C# 6-7)
  • Adding indexer methods and index initialisers
  • Creating Tuples (C# 7)
  • Creating Record Classes (C# 9)
  • Easier immutability using the with keyword (C# 9)
  • Deconstructing objects (C# 7)
  • Default Interface Methods (C# 9)

Cleaner Syntax

  • Using statically imported members (C# 6)
  • Out variables updates in C# 7
  • Writing switch expressions (C# 8)
  • Accessing indices and ranges (C# 8)
  • Simplified object creation with new() and default (C# 9)
  • Releasing resources via IDisposable
  • Applying using blocks and using declarations (C# 8)
  • Exception Filters (C# 6)
  • Pattern Matching (C# 7-9)
  • Using nameof and Caller Attributes (C# 6-8)
  • Easier literals (C# 7)
  • Local and Static Local Functions and Lambdas (C# 7-9)

Null Safety

  • Using Nullable references
  • Null Conditional Operator
  • Null Coalescing Operator
  • Null Coalescing Assignment Operator (C# 9)

Threading and Performance

  • The Task Parallel Library
  • The async/await Pattern
  • Consuming Asynchronous Streams (C# 8)
  • Asynchronous Disposable Pattern (C# 8)
  • Maximising efficiency with Span structures
  • Minimising GC with stack allocations
  • Pointers, refs and unsafe code

Requirements

At least 2 years working with C# and the .NET platform.

Garth Gilmour
Google Developer ExpertGoogle Developer Expert

25 years coding and educating. 1000+ deliveries of (almost) everything to everyone.

Follow Garth
For a breakdown of what to expect in our training, check out our training overview page.
Deloitte logo
Atlassian logo
Workday logo
BMW logo
Amex logo
McAfee logo
PWC logo