C# 8 and Beyond
summary
C# 8 adds concrete features with demos and tradeoffs: switch expressions and recursive patterns let code match deconstructed tuples and properties instead of verbose type checks; IAsyncEnumerable implements asynchronous streams (demo streams lines to console — rickroll example works); nullable reference types are opt-in and produce widespread compiler warnings that catch many potential NREs but require library annotation; ranges/indices and Span<T> slice without copying; using declarations auto-dispose at method end; default interface methods allow library evolution without breaking consumers but introduce inheritance complexity.
AI-written summary · about
chapters (10)
- 0:00Start
- 43:51Target-type new expression
- 44:39default in deconstruction
- 45:02Generic attributes
- 46:11Caller expression attribute
- 47:29Null-conditional await
- 47:54Record Types
- 49:46Declaration expressions
- 50:34Dictionary literals
- 51:03Extension Everything
related talks
37mC# 8 and Beyond
54mC# 8 and Beyond
47mExploring C# 8: The Deep Dive
01h 03mWhere is C# headed?
01h 02mWhat's new in C#? Exciting new features in C# 8 0 and 9 0
01h 00mWhat's new in C#? Exciting new features in C# 8.0, 9.0 and 10!
57mWhat's Coming to C#?
01h 00mLet’s catch up with C#! Exciting new features in C# 9 to C# 14!
