What's new in C#? Exciting new features in C# 8.0, 9.0 and 10! - Filip Ekberg - NDC London 2023

Here is the meta description: Explore the exciting new features in C# 8.0, 9.0, and 10, including pattern matching enhancements, nullable reference types, and top-level statements, with Filip Ekberg at NDC London 2023.

Key takeaways
  • C# 8, 9, and 10 have introduced various new features, including pattern matching enhancements, nullable reference types, and top-level statements.
  • Using declarations enable developers to bring imported namespaces into scope, reducing the need for using statements.
  • Pattern matching introduces the concept of deconstructors, which allow developers to decompose an object into its constituent parts.
  • Record types prioritize value-based equality, and record structs can be used to create immutable data structures.
  • Asynchronous streams enable developers to process asynchronous data streams more efficiently.
  • The init keyword allows for the creation of immutable objects with default values.
  • Top-level statements enable developers to write concise code without the need for classes or methods.
  • The using keyword can be used to enable nullable reference types, making it easier to identify and handle null values.
  • The ? operator can be used to make a reference type nullable.
  • Compiler directives can be used to enable or disable specific language features, such as nullable reference types.
  • C# 11 introduces new features, including both-expression patterns and target typing, which allow for more concise and expressive code.