About This Course
Learn about latest features of C#7, C#8, C#9 and C#10
This short course covers the latest and greatest features of C#, covering versions 7, 7.1, 7.2, 7.3, 8.0, 9.0 and 10.0 of the language that are being sim-shipped with corresponding Visual Studio updates.
Course Topics
Here's every language feature presented in this course, grouped by the version of the C# language.
C# 7:
Out Variables
Pattern Matching (is and switch expressions)
Tuples and Tuple Deconstruction
Local Functions
Ref Returns and Locals
Expression Bodied Members
Throw Expressions
Generalized Async Return Types
Literal Improvements
C# 7.1:
C# 7.2:
Leading Digit Separators
'Private Protected' Access Modifier
Non-Trailing Named Arguments
Reference Semantics on Value Types:
'In' Parameters
'Ref Readonly' Variables
'Ref Struct' and Span<T>
C# 7.3:
C# 8:
C# 9:
Record Types
Top-Level Calls
Initial Setters
Pattern Matching Improvements (type patterns, parenthesized patterns, conjunctive and, disjunctive or, negated not, relational patterns)
Performance and Interop (Native sized integers (nint/nuint), function pointers, SkipLocalsInit)
Fit and Finish (target-typed new, target type resolution of conditional expressions, static modifier for lambda expressions and anonymous methods, covariant return types, foreach GetEnumerator() use, discards as parameters to lambdas, attributes on local functions)
C# Code Generators (partial method syntax, module initializers)
C# 10:
Record Structs
Global Using Directives
File-Scoped Namespace Declarations
Extended Property Patterns
Generic Attributes
Lambda Improvements (attributes, explicit return types, natural type inference)
Enhanced #line directives
Prerequisites
Learning Outcomes
Understand and appreciate C#7, C#8 and C#9 language features
Learn how to use new language features in practice
Rajav3
Good