This is the companion repo for C# Features Succinctly by Dirk Strauss. Published by Syncfusion.
C# is continuing to evolve and improve with each major release of the language. As the C# team is innovating and adding features to C#, they share their thought process around the design of C# with the community.
To appreciate what C# 8.0 has to offer developers, it is important that we revisit some of the features available in C# 7.
-
out variables
-
Discards
-
Tuples
-
Pattern matching
-
Local functions
-
Expression-bodied members
-
Generalized async return types
With the release of C# 8.0 developers have been given more features and enhancements to improve their codebases with. I say improve, because C# 8.0 introduces many very nice language features such as pattern matching enhancements.
-
Default interface methods
-
Nullable reference types
-
Asynchronous streams
-
Asynchronous disposable
-
Indices and ranges
-
Switch expressions
-
Readonly members
-
Using declarations
-
Static local functions
-
Disposable ref structs
-
Null-coalescing assignment
-
Unmanaged constructed types
-
Stackalloc in nested expressions
-
Enhancement of interpolated verbatim strings
-
Enabling C# 8 in any .NET project
-
Top-level programs
-
Relational and logical patterns
-
Target-typed new expressions
-
Init-only properties
-
Init accessors and readonly fields
-
Records
-
More C# 9.0 goodies
-
Developer PowerShell inside Visual Studio
-
The Visual Studio Git Window
-
Drag and drop projects to add a reference
-
Searching Visual Studio
-
Code analyzers
-
File header support in .editorconfig
-
C# Language resources
- C# language reference
- C# language proposals
- C# language design meetings
- C# language design
Check out the entire library of more than 190 Succinctly ebooks at https://www.syncfusion.com/ebooks.