Выбери любимый жанр

Язык программирования C#9 и платформа .NET5 - Троелсен Эндрю - Страница 30


Изменить размер шрифта:

30

Ждем ваших отзывов!

Вы, читатель этой книги, и есть главный ее критик. Мы ценим ваше мнение и хотим знать, что было сделано нами правильно, что можно было сделать лучше и что еще вы хотели бы увидеть изданным нами. Нам интересны любые ваши замечания в наш адрес.

Мы ждем ваших комментариев и надеемся на них. Вы можете прислать нам электронное письмо либо просто посетить наш веб-сайт и оставить свои замечания там. Одним словом, любым удобным для вас способом дайте нам знать, нравится ли вам эта книга, а также выскажите свое мнение о том, как сделать наши книги более интересными для вас.

Отправляя письмо или сообщение, не забудьте указать название книги и ее авторов, а также свой обратный адрес. Мы внимательно ознакомимся с вашим мнением и обязательно учтем его при отборе и подготовке к изданию новых книг.

Наши электронные адреса:

E-mail: [email protected]

WWW: http://www.dialektika.com

Часть I

Язык программирования C# и платформа .NET 5

Глава 1

Введение в C# и .NET (Core) 5

Платформа Microsoft .NET и язык программирования C# впервые были представлены приблизительно в 2002 году и быстро стали главной опорой современной индустрии разработки программного обеспечения. Платформа .NET позволяет большому числу языков программирования (включая С#, VB.NET и F#) взаимодействовать друг с другом. На программу, написанную на С#, может ссылаться другая программа, написанная на VB.NET. Такая способность к взаимодействию более подробно обсуждается позже в главе.

В 2016 году компания Microsoft официально выпустила инфраструктуру .NET Core. Подобно .NET инфраструктура .NET Core позволяет языкам взаимодействовать друг с другом (хотя поддерживает ограниченное количество языков). Что более важно, новая инфраструктура способна функционировать не только под управлением операционной системы Windows, но также может запускаться (и позволять разрабатывать приложения) в средах iOS и Linux. Такая независимость от платформы открыла язык C# для гораздо большего числа разработчиков. Несмотря на то что межплатформенное использование C# поддерживалось и до выхода .NET Core, это делалось через ряд других инфраструктур, таких как проект

Mono
.

На заметку! Возможно, вас заинтересовало наличие круглых скобок в названии главы. С выходом .NET 5 часть "Core" в имени была отброшена с целью указания на то, что эта версия является унификацией всей платформы .NET. Но все же ради ясности повсюду в книге будут применяться термины .NET Core и .NET Framework.

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.

Возможность взаимодействия с существующим кодом. Несомненно, это очень полезно. Существующее программное обеспечение .NET Framework может взаимодействовать с более новым программным обеспечением .NET Core. Обратное взаимодействие тоже возможно через .NET Standard.

Поддержка многочисленных языков программирования. Приложения .NET Core могут создаваться с использованием языков программирования С#, F# и VB.NET (при этом C# и F# являются основными языками для ASP.NET Core).

Общий исполняющий механизм, разделяемый всеми языками .NET Core. Одним из аспектов такого механизма является наличие четко определенного набора типов, которые способен опознавать каждый язык .NET Core.

Языковая интеграция. В .NET Core поддерживается межъязыковое наследование, межъязыковая обработка исключений и межъязыковая отладка кода. Например, можно определить базовый класс в C# и расширить этот тип в VB.NET.

Обширная библиотека базовых классов. Данная библиотека предоставляет тысячи предварительно определенных типов, которые позволяют строить библиотеки кода, простые терминальные приложения, графические настольные приложения и веб-сайты производственного уровня.

Упрощенная модель развертывания. Библиотеки .NET Core не регистрируются в системном реестре. Более того, платформа .NET Core позволяет нескольким версиям инфраструктуры и приложения гармонично сосуществовать на одном компьютере.

Всесторонняя поддержка командной строки. Интерфейс командной строки .NET Core (command-line interface — CLI) является межплатформенной цепочкой инструментов для разработки и пакетирования приложений .NET Core. Помимо стандартных инструментов, поставляемых в составе .NET Core SDK, могут быть установлены дополнительные инструменты.

Все перечисленные темы (и многие другие) будут подробно рассматриваться в последующих главах. Но сначала необходимо объяснить новый жизненный цикл поддержки для .NET Core.

30
Перейти на страницу:
Мир литературы