Description
This short course covers the latest and greatest features of C#, covering versions 7, 7.1, 7.2, 7.3, 8.0 and 9.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:
How to turn on C# 7.1 support Async Main Default Expressions Ref Assemblies Infer Tuple Names Pattern-Matching with Generics
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:
Performance improvements Access fixed fields without pinning Reassign ref local variables Use initializers on stackalloc arrays Use fixed statements on any type that supports a pattern Enhancements to existing features Tuple == and != support Use expression variables in more locations Attach attributes to backing field of auto-properties Improved method resolution when arguments differ by ‘in’ Improved overload resolution New compiler options: deterministic publicsign pathmap
C# 8:
Nullable Reference Types Indices and Ranges Default Interface Members Pattern Matching
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)
Prerequisites
Knowledge and understanding of C# 6 and earlier General experience in .NET/C# application development
Learning Outcomes
An understanding and appreciation of latest C# 7/7.1/7.2/7.3/8/9 language features Understanding of how to convert existing C# code to C# 7/7.1/7.2/7.3/8/9
Who this course is for:
Beginner and experienced .NET/C# developers
Requirements
Knowledge of C# 6 and earlier
Last Updated 12/2020 |
udp://inferno.demonoid.pw:3391/announce udp://tracker.openbittorrent.com:80/announce udp://tracker.opentrackr.org:1337/announce udp://torrent.gresille.org:80/announce udp://glotorrents.pw:6969/announce udp://tracker.leechers-paradise.org:6969/announce udp://tracker.pirateparty.gr:6969/announce udp://tracker.coppersurfer.tk:6969/announce udp://ipv4.tracker.harry.lu:80/announce udp://9.rarbg.to:2710/announce udp://shadowshq.yi.org:6969/announce udp://tracker.zer0day.to:1337/announce |