Mark is super smart, insists on understanding everything to the core, and has phenomenal insight into how things affect real developers. . . . He goes right to the essence and communicates with great integrity—no sugarcoating—and has a keen eye for practical value and real-world problems.”
Mads Torgersen, C# Lead Designer, Microsoft
Essential C# 8.0 is a well-organized, no-fluff guide to C# 8.0 for programmers at all levels of experience. This edition retains all the valuable content of prior editions. It adds discussions of null reference types, indices and ranges, enhanced pattern matching, asynchronous stream, and more.
World-class C# expert Mark Michaelis presents a comprehensive tutorial and reference for the entire language, providing an accelerated learning opportunity to achieve expert C# programming skill. He includes key C# 8.0 enhancements and succinct examples to illustrate key constructs. Also, he reviews updated coding guidelines for minimizing bugs and writing code that’s easier to evolve. To help you quickly find what you need, there are version-specific indexes of C# 6.0, 7.0, and 8.0 topics and visual icons that identify when each language innovation was introduced.
A Peek Inside Essential C# 8.0
- Use structured programming constructs to write functioning code immediately
- Learn both the complexities and solutions to nullable reference types
- Thoroughly master C# object constructs, including classes, inheritance, and interfaces
- Reduce code redundancy with generics, delegates, lambda expressions, and events
- Take full advantage of collections, including the new standard query operator collection API
- Make the most of reflection, attributes, and the declarative programming paradigm
- Improve multithreading with the task-based async pattern and C# 8.0 asynchronous streams
- Enhance performance through the parallel processing of data and multithreading tasks
- Program complex types with enhanced pattern matching syntax
- Interoperate with unmanaged code written in other languages, including C-based APIs
- Explore the relationship between C# programs and the underlying CLI runtime