10 ноября 2020 года компания Microsoft выпустила C# 9 и .NET 5. Как и C# 8, версия C# 9 привязана к определенной версии инфраструктуры и будет функционировать только под управлением .NET 5.0 и последующих версий. Привязка версии языка к версии инфраструктуры давала команде разработчиков C# свободу в плане ввода новых средств в С#, которые в противном случае не удалось бы добавить из-за ограничений инфраструктуры.
Во введении книги отмечалось, что при ее написании преследовались две цели. Первая из них — предоставление читателям глубокого и подробного описания синтаксиса и семантики языка С#. Вторая (не менее важная) цель — иллюстрация использования многочисленных API-интерфейсов .NET Core. В перечень рассматриваемых тем входят доступ к базам данных с помощью ADO.NET и Entity Framework (EF) Core, построение пользовательских интерфейсов посредством Windows Presentation Foundation (WPF), а также создание веб-служб REST и веб-приложений с применением ASP.NET Core. Как говорят, пеший поход длиной тысячу километров начинается с первого шага, который и будет сделан в настоящей главе.
Первая глава закладывает концептуальную основу для успешного освоения остального материала книги. Здесь вы найдете высокоуровневое обсуждение нескольких связанных с .NET тем, таких как сборки, общий промежуточный язык (Common Intermediate Language — CIL) и оперативная (Just-In-Time — JIT) компиляция. В дополнение к предварительному обзору ряда ключевых слов C# вы узнаете о взаимоотношениях между разнообразными компонентами .NET Core. Сюда входит исполняющая среда .NET Runtime, которая объединяет общеязыковую исполняющую среду .NET Core (.NET Core Common Language Runtime — CoreCLR) и библиотеки .NET Core (.NET Core Libraries — CoreFX) в единую кодовую базу, общая система типов (Common Type System — CTS), общеязыковая спецификация (Common Language Specification — CLS) и .NET Standard.
Кроме того, в главе представлен обзор функциональности, поставляемой в библиотеках базовых классов .NET Core, для обозначения которых иногда применяется аббревиатура BCL (base class library — библиотека базовых классов). Вы кратко ознакомитесь с независимой от языка и платформы природой .NET Core. Как несложно догадаться, многие затронутые здесь темы будут более детально исследоваться в оставшихся главах книги.
На заметку! Многие средства, рассматриваемые в настоящей главе (и повсюду в книге), также присутствуют в первоначальной инфраструктуре .NET Framework. В этой книге всегда будут использоваться термины "инфраструктура .NET Core" и "исполняющая среда .NET Core", а не общий термин ". NET", чтобы четко указывать, какие средства поддерживаются в .NET Core.
Некоторые основные преимущества инфраструктуры .NET Core
Инфраструктура .NET Core представляет собой программную платформу для построения веб-приложений и систем на основе служб, функционирующих под управлением операционных систем Windows, iOS и Linux, а также приложений Windows Forms и WPF для Windows. Ниже приведен краткий перечень основных средств, предлагаемых .NET Core.
•
•
•
•
•
•
Бьерн Страуструп , Бьёрн Страуструп , Валерий Федорович Альмухаметов , Ирина Сергеевна Козлова
Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT