You’re an intermediate to advanced C# programmer excited about attending a conference filled with cutting edge talks from amazing speakers. It’s important to stay up to date, but you keep wondering if you’re effectively using new features and fundamental aspects of C# and .NET.
You’ll learn more about the type system. Along with its garbage collector it remains the foundation of all variations of .NET. You’ll also see how delegates have evolved while remaining one of the most important building blocks. You’ll see a sampling of ways that C# and the .NET can surprise you, in possibly unpleasant ways. You’ll look back at effectively using generics, how to use new generic constraints, type hierarchies, and the complex signatures that can result from tuples and functional techniques.
You’ll get a guided tour through the async and await wilderness. You'll start with basic uses where async and await work like magic. From there, you'll learn common practices and how async tasks compose. You'll dive into enough of the implementation details to understand how to apply async practices. After working through these different practices, you'll emerge from the wilderness understanding how to write clear, correct and safe async code.
You’ll explore how features in recent versions of C# work together to significantly simplify code. You’ll learn how to use pattern matching to apply algorithms to multiple and diverse objects, how string interpolation makes formatting strings much easier and clearer, how to create compound assignments and comparisons using Tuples and Deconstruction and how to simplify iterators and async error handling using local functions
Throughout the day the focus is on how you can use these features and techniques to make the code you write better – more reliable, easier to comprehend, and better performing.