In the 2000s, Microsoft designed and published C# in an open forum platform. The aim was to capture features of object-oriented languages like C++ and integrate with the .NET platform. Since then, it has evolved along with .NET. This volume deals with “advanced features” of C# (the author’s terms), including their interaction with other facets of the language and .NET. The thought behind the sequencing of the material is not clear. The introduction gives a list of topics without comments.
Chapter 1 deals with C# 7.0, published in March 2017. It focuses on tuples, pattern matching, discards, local functions, and template objects and throw expressions. Each of these topics is discussed in a guidebook style and illustrated via examples.
Chapter 2 explores the history and development of C# through C# 8.0. Features relating to abstract classes, interfaces, async and await, extension methods, generics, and dynamic types are discussed and illustrated.
Chapter 3 covers the new features of C# 8.0. Nullable reference types, recursive patterns, ranges and indices, switch expressions, target-typed new expressions, async streams, and declarations are emphasized. Easy-to-understand discussions on the use of a feature are followed by practical examples.
Chapter 4 discusses web applications, using ASP.NET MVC to ensure an application is responsive on any terminal device, including creating an application; referencing jQuery and Bootstrap; setting and using SCSS; creating models, controllers, and views; using Razor; adding a plugin; and testing and debugging. Examples use the latest version of Visual Studio 2019.
Modern applications could be required to run on cross platforms, including Android and Linux. This is enabled by .NET compatibility characteristics and features. In chapter 5, the author takes a look at creating and running .NET Core 3.0 applications.
The given examples are simple and illustrate concepts in an easy-to-understand manner. The book is a useful guide for experienced C++ and/or C# programmers.
More reviews about this item: Amazon