Microsoft net runtime что это
Перейти к содержимому

Microsoft net runtime что это

  • автор:

Начало работы с .NET Framework

Платформа .NET Framework — это среда выполнения, которая управляет приложениями, предназначенными для .NET Framework. Она состоит из среды CLR, которая предоставляет инструменты управления памятью и другие службы системы, и обширной библиотеки классов, позволяющей программистам использовать устойчивый, надежный код во всех основных областях разработки приложений.

.NET Framework 4.8 — это последняя версия .NET Framework. Платформа .NET Framework изменяется ежемесячно с устранением ошибок, связанных с безопасностью и надежностью. Платформа .NET Framework будет по-прежнему включена в состав Windows. Исключать ее не планируется. Переносить приложения .NET Framework не требуется, однако для новых разработок следует использовать платформу .NET 5 или более поздних версий.

Что такое платформа .NET Framework?

Платформа .NET Framework — это управляемая среда выполнения для ОС Windows, предоставляющая разнообразные службы выполняемым в ней приложениям. Она состоит из двух основных компонентов: среды CLR — механизма, управляющего выполняющимися приложениями, и библиотеки классов .NET Framework — библиотеки проверенного кода, предназначенного для повторного использования, который разработчики могут вызывать из своих приложений. Вот какие службы предоставляет .NET Framework выполняемым в ней приложениям.

  • Управление памятью Во многих языках программисты должны предусматривать выделение и освобождение памяти, а также управлять временем жизни объектов. В приложениях .NET Framework эти функции выполняет среда CLR.
  • Общая система типов. В традиционных языках программирования базовые типы определяются компилятором, что осложняет взаимодействие между языками. В .NET Framework базовые типы определяются системой типов .NET Framework, при этом для всех языков .NET Framework используются одни и те же базовые типы.
  • Обширная библиотека классов. Разработчикам не требуется писать код для выполнения стандартных низкоуровневых операций программирования, так как они используют удобную библиотеку типов и членов, входящую в библиотеку классов .NET Framework.
  • Платформы и технологии разработки. Платформа .NET Framework включает библиотеки для конкретных областей разработки приложений, например ASP.NET для веб-приложений, ADO.NET для доступа к данным, Windows Communication Foundation для приложений, ориентированных на службы, а также Windows Presentation Foundation для классических приложений Windows.
  • Взаимодействие языков. Языковые компиляторы, ориентированные на .NET Framework, выдают промежуточный код, называемый языком CIL (Common Intermediate Language), который, в свою очередь, компилируется во время выполнения средой CLR. С помощью этой функции подпрограммы, написанные на одном языке, доступны в других языках, поэтому разработчики могут создавать приложения на предпочитаемых языках.
  • Совместимость версий. Обычно приложения, разработанные на основе конкретной версии платформы .NET Framework, могут выполняться без доработок и на более поздних версиях платформы.
  • Параллельное выполнение. Платформа .NET Framework помогает разрешать конфликты версий, поскольку на компьютере могут быть установлены несколько версий среды CLR. Это означает, что несколько версий приложений могут существовать совместно и приложение может выполняться на версии платформы .NET Framework, для которой оно было создано. Параллельное выполнение применяется к группам версий .NET Framework 1.0/1.1, 2.0/3.0/3.5 и 4/4.5.x/4.6.x/4.7.x/4.8.
  • Настройка для различных версий. При настройке в соответствии со стандартом .NET разработчики создают библиотеки классов, которые работают на различных платформах .NET Framework, поддерживаемых соответствующей версией стандарта. Например, библиотеки, разработанные в соответствии со стандартом .NET Standard 2.0, могут использоваться приложениями, ориентированными на платформы .NET Framework 4.6.1, .NET Core 2.0 и UWP 10.0.16299.

.NET Framework для пользователей

Если вы не разрабатываете приложения .NET Framework, но используете их, вам не требуется обладать специальными знаниями о платформе .NET Framework или ее работе. В большинстве случаев платформа .NET Framework совершенно прозрачна для пользователей.

Если используется операционная система Windows, платформа .NET Framework, возможно, уже установлена на компьютере. Кроме того, если устанавливается приложение, для работы которого требуется .NET Framework, программа установки приложения может установить нужную версию .NET Framework на компьютер. В некоторых случаях отображается диалоговое окно с приглашением установить платформу .NET Framework. Если вы попытались запустить приложение и появилось это окно, при наличии подключения к Интернету можно перейти на веб-страницу, откуда можно установить отсутствующую версию .NET Framework. Дополнительные сведения см. в руководстве по установке.

В общем случае не рекомендуется удалять версии платформы .NET Framework, установленные на компьютере. Для этого имеются две причины:

  • Если приложение зависит от конкретной версии платформы .NET Framework, то при удалении этой версии его работа может быть нарушена.
  • В некоторых версиях платформы .NET Framework существуют обновления на месте на более ранние версии. Например, .NET Framework 3.5 представляет собой обновление на месте для версии 2.0, а .NET Framework 4.8 — обновление на месте для версий с 4 по 4.7.2. Дополнительные сведения см. в разделе Платформа.NET Framework: версии и зависимости.

Если вы решите удалить платформу .NET Framework в версии Windows, предшествующей Windows 8, всегда используйте для удаления средство Программы и компоненты. Никогда не удаляйте версию платформы .NET Framework вручную. В ОС Windows 8 и более поздних версий .NET Framework представляет собой компонент операционной системы, который нельзя удалить отдельно.

На одном компьютере могут одновременно существовать несколько версий платформы .NET Framework. То есть при установке более поздних версий удалять предыдущие версии не требуется.

.NET Framework для разработчиков

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

Перед разработкой приложений или компонентов платформы .NET Framework сделайте следующее:

  1. Если платформа не предустановлена в операционной системе, установите версию платформы .NET Framework, на которой будет работать ваше приложение. Текущая версия — .NET Framework 4.8. Она предварительно установлена в обновлениях Windows 10 за май и ноябрь 2019 года и май и октябрь 2020 г., а также доступна для скачивания в более ранних версиях ОС Windows. Требования к системе для .NET Framework см. в разделе Требования к системе. Сведения об установке других версий .NET Framework см. в руководстве по установке. Дополнительные пакеты .NET Framework выпускаются внештатно. Это значит, что они выпускаются по очереди, нерегулярно. Дополнительные сведения об этих пакетах см. в статье .NET Framework и внештатные выпуски.
  2. Выберите язык или языки, поддерживаемые версией платформы .NET Framework, которую вы хотите использовать для разработки приложений. Поддерживается целый ряд языков, в том числе Visual Basic, C#, F# и C++/CLI от Майкрософт. (Язык программирования, позволяющий разрабатывать приложения для .NET Framework, соответствует спецификации Common Language Infrastructure (CLI).)
  3. Выберите и установите среду разработки, которая будет использоваться для создания приложений и которая поддерживает выбранные язык или языки программирования. Интегрированной средой разработки Майкрософт для приложений .NET Framework является Visual Studio. Доступны разные выпуски.

Дополнительные сведения о разработке приложений, предназначенных для .NET Framework, см. в руководстве по разработке.

Связанные статьи

Заголовок Описание
Обзор Содержит подробные сведения для разработчиков, которые занимаются созданием приложений, предназначенных для платформы .NET Framework.
Руководство по установке Содержит сведения об установке платформы .NET Framework.
.NET Framework и внештатные выпуски Содержит описание внештатных выпусков платформы .NET Framework и порядка их использования в приложении.
Требования к системе Содержит требования к оборудованию и операционной системе для использования платформы .NET Framework.
Документация по .NET Core Концептуальная и справочная документация по API для .NET Core.
.NET Standard Описывает стандарт .NET Standard, который представляет собой спецификацию с возможностью управления версиями, поддерживаемую отдельными реализациями платформы .NET, что позволяет гарантировать наличие согласованного набора API-интерфейсов на различных платформах.

См. также

  • Руководство по .NET Framework
  • Новые возможности
  • Браузер API .NET
  • Руководство по разработке

Что такое .NET? Общие сведения и общие сведения

.NET — это бесплатная кроссплатформенная кроссплатформенная платформа разработчика с открытым кодом для создания множества приложений. Платформа .NET основана на высокопроизводительной среде выполнения , которая используется в рабочей среде многими высокомасштабируемыми приложениями.

Облачные приложения

  • Полностью облачные приложения
  • .NET Aspire
  • Консольные приложения
  • Бессерверные функции в облаке
  • Веб-приложения, веб-API и микрослужбы

Кроссплатформенные клиентские приложения

  • Классические приложения
  • Игры
  • Мобильные приложения.

Приложения Для Windows

  • Классические приложения Windows
    • Windows Forms
    • Windows WPF
    • Универсальная платформа Windows (UWP)

    Другие типы приложений

    • Машинное обучение
    • Интернет вещей (IoT)

    Функции

    Функции .NET позволяют разработчикам эффективно писать надежный и эффективный код.

    • Асинхронный код
    • Атрибуты
    • Отражение
    • Анализаторы кода
    • Делегаты и лямбда-выражения
    • События
    • Исключения
    • Сборка мусора
    • Универсальные типы
    • LINQ (языковой интегрированный запрос).
    • Параллельное программирование и управляемое потоки
    • Вывод типов — C#, F#, Visual Basic.
    • Система типов
    • Небезопасный код

    Использование .NET

    Приложения и библиотеки .NET создаются из исходного кода и файла проекта с помощью .NET CLI или интегрированной среды разработки (IDE), например Visual Studio.

    В следующем примере используется минимальное приложение .NET:

      Exe net8.0   
    Console.WriteLine("Hello, World!"); 

    Приложение можно создавать и запускать с помощью .NET CLI:

    dotnet run Hello, World! 

    Двоичные дистрибутивы

    • Пакет SDK для .NET: набор средств, библиотек и сред выполнения для разработки, создания и тестирования приложений.
    • Среда выполнения .NET: набор сред выполнения и библиотек для запуска приложений.

    Вы можете скачать .NET из:

    • Сайт загрузки Майкрософт.
    • Контейнеры.
    • Диспетчеры пакетов Linux.

    Бесплатный и с открытым исходным кодом

    .NET является бесплатным, открытый код и является проектом .NET Foundation. .NET поддерживается корпорацией Майкрософт и сообществом на GitHub в нескольких репозиториях.

    Поддержка

    Корпорация Майкрософт поддерживает .NET в операционных системах Android, Apple, Linux и Windows. Его можно использовать в архитектурах Arm64, x64 и x86. Она также поддерживается в эмулированных средах, таких как macOS Rosetta 2.

    Новые версии .NET выпускаются ежегодно в ноябре. Выпуски .NET в нечетных годах являются выпусками долгосрочной поддержки (LTS) и поддерживаются в течение трех лет. Выпуски в четных годах — выпуски standard-Term Support (STS) и поддерживаются в течение 18 месяцев. Уровень качества, критические политики изменений и все остальные аспекты выпусков одинаковы. Дополнительные сведения см. в разделах «Выпуски и поддержка».

    Команда .NET в Корпорации Майкрософт совместно работает с другими организациями для распространения и поддержки .NET различными способами.

    Red Hat поддерживает .NET в операционной системе Red Hat Enterprise Linux (RHEL).

    Параметры выполнения

    Среда CLR является основой для всех приложений .NET. Основными функциями среды выполнения являются:

    • сборка мусора;
    • Безопасность памяти и безопасность типов.
    • Высокий уровень поддержки языков программирования.
    • Кроссплатформенный дизайн.

    .NET иногда называется средой выполнения управляемого кода. Он называется управляемым в первую очередь потому, что он использует сборщик мусора для управления памятью и потому что он обеспечивает безопасность типов и памяти. Среда CLR виртуализирует (или абстрагирует) различные понятия операционной системы и оборудования, такие как память, потоки и исключения.

    Среда CLR была разработана для кроссплатформенной среды выполнения с момента его создания. Она была перенесена в несколько операционных систем и архитектур. Кроссплатформенный код .NET обычно не требует повторной компиляции для выполнения в новых средах. Вместо этого необходимо просто установить другую среду выполнения для запуска приложения.

    Среда выполнения предоставляет различные службы и API-интерфейсы диагностика для отладчиков, дампов и средств трассировки и наблюдаемости. Реализация наблюдаемости в основном основана на OpenTelemetry, обеспечивая гибкий мониторинг приложений и проектирование надежности сайта (SRE).

    Среда выполнения предлагает низкоуровневую функцию взаимодействия C, используя сочетание P/Invoke, типов значений и возможность перерезания значений в пределах границы машинного или управляемого кода.

    Языки

    Среда выполнения предназначена для поддержки нескольких языков программирования. Языки C#, F# и Visual Basic поддерживаются корпорацией Майкрософт и предназначены для совместной работы с сообществом.

    • C# — это современный, объектно-ориентированный и типобезопасный язык программирования. Он имеет свои корни в семействе языков C и сразу же знаком с программистами C, C++, Java и JavaScript.
    • F# — это язык программирования взаимодействия для написания краткого, надежного и эффективного кода. Программирование F# ориентировано на данные, где код включает преобразование данных с помощью функций.
    • Visual Basic использует более подробный синтаксис, который ближе к обычному человеческому языку. Это может быть более простой язык для людей, новых для программирования.

    табличных переменных

    Приложения .NET (как написанные на высокоуровневом языке, например C#), компилируются в промежуточный язык (IL). IL — это компактный формат кода, который можно поддерживать в любой операционной системе или архитектуре. Большинство приложений .NET используют API, поддерживаемые в нескольких средах, требуя выполнения только среды выполнения .NET.

    Il необходимо скомпилировать в машинный код для выполнения на ЦП, например Arm64 или x64. .NET поддерживает модели компиляции «Заранее» (AOT) и JIT.

    • В Android, macOS и Linux JIT-компиляция является стандартной, и AOT является необязательным (например, с ReadyToRun).
    • В iOS AOT является обязательным (за исключением случаев выполнения в симуляторе).
    • В средах WebAssembly (Wasm) AOT является обязательным.

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

    Преимущество AOT заключается в том, что он обеспечивает лучший запуск приложения и может (в некоторых случаях) привести к меньшему развертыванию. Основной недостаток заключается в том, что двоичные файлы должны быть созданы для каждого отдельного целевого объекта развертывания (аналогично любому другому машинному коду). Код AOT несовместим с некоторыми шаблонами отражения.

    Библиотеки среды выполнения.

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

    Ниже приведены некоторые примеры типов, определенных в библиотеках среды выполнения .NET:

    • Каждый тип .NET является производным от System.Object типа.
    • Примитивные типы значений, например System.Boolean и System.Int32.
    • Коллекции, такие как System.Collections.Generic.List и System.Collections.Generic.Dictionary .
    • Типы данных, такие как System.Data.DataSet и System.Data.DataTable.
    • Служебные сетевые типы, такие как System.Net.Http.HttpClient.
    • Служебные типы файлов и потоков ввода-вывода, такие как System.IO.FileStream и System.IO.TextWriter.
    • Служебные типы сериализации, такие как System.Text.Json.JsonSerializer и System.Xml.Serialization.XmlSerializer.
    • Высокопроизводительные типы, такие как System.Span , System.Numerics.Vector и Pipelines.

    Диспетчер пакетов NuGet

    NuGet — это диспетчер пакетов для .NET. Это позволяет разработчикам совместно использовать скомпилированные двоичные файлы друг с другом. NuGet.org предлагает множество популярных пакетов от сообщества.

    Инструменты

    Пакет SDK для .NET — это набор библиотек и инструментов для разработки и запуска приложений .NET. Он включает подсистему сборки MSBuild , компилятор Roslyn (C# и Visual Basic) и компилятор F# . Большинство команд выполняются с помощью dotnet команды. Средства CLI можно использовать для локальной разработки и непрерывной интеграции.

    Семейство ПАРАМЕТРОВ среды разработки Visual Studio обеспечивает отличную поддержку языков .NET и C#, F#и Visual Basic.

    GitHub Codespaces и функции безопасности GitHub поддерживают .NET.

    Записные книжки

    .NET Interactive — это группа средств и интерфейсов командной строки, которые позволяют пользователям создавать интерактивные возможности в веб-приложениях, разметке и записных книжках.

    Дополнительные сведения см. на следующих ресурсах:

    • Учебник по .NET в браузере
    • Использование записных книжек .NET с Jupyter на компьютере
    • Документация по .NET Interactive

    CI/CD

    MSBuild и .NET CLI можно использовать с различными средствами и средами непрерывной интеграции, например:

    Дополнительные сведения см. в статье Об использовании пакета SDK для .NET в средах непрерывной интеграции (CI).

    Модели развертывания

    • Автономные приложения включают среду выполнения .NET и зависимые библиотеки. Они могут быть однофайловыми или несколькими файлами. Пользователи приложения могут запустить его на компьютере, на котором не установлена среда выполнения .NET. Автономные приложения всегда предназначены для одной операционной системы и конфигурации архитектуры.
    • Для приложений, зависящих от платформы, требуется совместимая версия среды выполнения .NET, обычно установленная глобально. Приложения, зависящие от платформы, могут быть опубликованы для одной операционной системы и конфигурации архитектуры или как переносимые, предназначенные для всех поддерживаемых конфигураций.

    Приложения .NET запускаются с собственным исполняемым файлом по умолчанию. Исполняемый файл предназначен как для операционной системы, так и для архитектуры. Приложения также можно запустить с помощью dotnet команды.

    Приложения можно развертывать в контейнерах. Корпорация Майкрософт предоставляет образы контейнеров для различных целевых сред.

    Журнал .NET

    В 2002 году корпорация Майкрософт выпустила .NET Framework, платформу разработки для создания приложений Windows. Сегодня платформа .NET Framework находится в версии 4.8 и остается полностью поддерживаемым корпорацией Майкрософт.

    В 2014 году корпорация Майкрософт начала создавать кроссплатформенный преемник платформы .NET Framework с открытым кодом. Эта новая реализация .NET носит имя .NET Core до версии 3.1. Следующая версия после .NET Core 3.1 упала часть «Core» имени и была названа .NET 5.

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

    Экосистема .NET

    Существует несколько вариантов .NET, каждый из которых поддерживает другой тип приложения. Причиной нескольких вариантов является часть историческая, техническая часть.

    Реализации .NET (исторический порядок):

    • платформа .NET Framework — предоставляет доступ к широким возможностям Windows и Windows Server. Также широко используется для облачных вычислений под управлением Windows. Исходный .NET.
    • Mono — кроссплатформенная реализация платформа .NET Framework. Исходное сообщество и открытый код .NET. Используется для приложений Android, iOS и Wasm.
    • .NET (Core) — кроссплатформенная и открытый код реализация .NET, переосмыслена для облачного возраста, оставаясь значительно совместимой с платформа .NET Framework. Используется для приложений Linux, macOS и Windows.

    Следующие шаги

    • Выбор учебника по .NET
    • Попробовать .NET в браузере
    • Обзор языка C#
    • Обзор языка F#

    Совместная работа с нами на GitHub

    Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.

    Microsoft .NET Framework 4.8 автономный установщик для Windows

    Microsoft .NET Framework 4.8 — это высоко-совместимое обновление на месте для .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 и 4.7.2.

    Автономный пакет можно использовать в ситуациях, когда установщик не может быть использован из-за отсутствия подключения к Интернету. Этот пакет больше, чем онлайн установщик, и не включает языковые пакеты. Рекомендуется использовать онлайн установщик вместо автономного установщика для оптимальной производительности и требований к пропускной способности.

    При установке этого пакета на операционную систему устанавливаются следующие пакеты или обновления:

    • В Windows 7 с пакетом обновления 1 (SP1) и Windows Server 2008 R2 с пакетом обновления 1 (SP1), обновление для .NET Framework 4.8 (KB4503548) отображается как установленный продукт в разделе Программы и компоненты панели управления.
    • В Windows Server 2012 обновление для Microsoft Windows (KB4486081) отображается в разделе Установленные обновления на панели управления. В Windows RT 8.1, Windows 8.1 и Windows Server 2012 R2 обновление для Microsoft Windows (KB4486105) отображается в разделе Установленные обновления на панели управления.
    • В Windows RT 8.1, Windows 8.1 и Windows Server 2012 R2 обновление для Microsoft Windows (KB4486105) отображается в разделе Установленные обновления на панели управления.
    • В Windows 10 Anniversary Update (версия 1607), Windows 10 Creators Update (версия 1703) и Windows Server 2016 Обновление для Microsoft Windows (KB4486129) отображается в разделе Установленные обновления на панели управления.
    • В Windows 10 Falls Creator’s Update версия 1709, Windows 10 Обновление от апреля 2018 года (Версия 1803), Windows 10 Обновление от октября 2018 года (версия 1809) и Windows Server 2019, оно указано как обновление для Microsoft Windows (KB4486153) под установленными обновлениями в панели управления.

    Сведения о загрузке

    На сайте загрузок .NET можно загрузить указанные ниже файлы:

    Для Windows RT 8.1

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

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

    Проблемы, которые устраняет это обновление

    В этом обновлении исправлены следующие проблемы в .NET Framework 4.8.

    • Исправлена ошибка инициализации System.Web.Caching при использовании ASP.NET кэша на машинах без IIS.

    Формы Windows:

    • Исправлена возможность выбора редактирования текста поля ComboBox с помощью мыши вниз+move.
    • Исправлена проблема с взаимодействием между управлением пользователем WPF и хостингом приложения WinForms при обработке ввода клавиатуры.
    • Исправлена проблема с объявлением экранным диктором/NVDA о расширении и свертывании ComboBox PropertyGrid.
    • Исправлена проблема с визуализацией «. » кнопки управления PropertyGrid в режиме HC, чтобы нарисовать фон кнопки и контрастные точки.
    • Исправлена утечка маркера во время создания приложения «Окно» в Приложениях WPF, которые проявляются для Per Monitor DPI V2 Awareness. Эта утечка может привести к посторонней GC. Сбор вызовов, которые могут повлиять на производительность в сценариях создания окон.
    • Исправлена регрессия, вызванная исправлением ошибки, включающая привязку с недвусмысленностью DataContext на пути связывания.

    Дополнительная информация

    Дополнительную информацию о .NET Framework 4.8 см. в статье Известные проблемы .NET Framework 4.8.

    Эта версия .NET Framework работает параллельно с .NET Framework 3.5 SP1 и более ранними версиями, но она выполняет обновление на месте для .NET Framework 4, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1 и 4.7.2.

    Параметры командной строки для этого обновления

    Дополнительные сведения о различных параметрах командной строки, поддерживаемых этим обновлением, см. в разделе «Параметры командной строки» в руководстве по развертыванию .NET Framework для разработчиков.

    Требование перезагрузки

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

    Относится к

    Microsoft .NET Framework 4.8 (автономный установщик) поддерживается следующими операционными системами:

    • Windows 10 версии 1809
    • Windows 10 версии 1803
    • Windows 10 версии 1709
    • Windows 10 версии 1703
    • Windows 10 версии 1607
    • Windows 8.1
    • Windows 7 с пакетом обновления 1 (SP1)
    • Windows Server 2019
    • Windows Server версия 1803
    • Windows Server, версия 1809
    • Windows Server 2016
    • Windows Server 2012 R2.
    • Windows Server 2012;
    • Windows Server 2008 R2 с пакетом обновления 1 (SP1)

    Общие сведения о платформе .NET

    Платформа .NET Framework — это технология, которая поддерживает создание и выполнение веб-служб и приложений Windows. При разработке платформы .NET Framework учитывались следующие цели.

    • Обеспечение согласованной объектно-ориентированной среды программирования для локального сохранения и выполнения объектного кода, для локального выполнения кода, распределенного в Интернете, либо для удаленного выполнения.
    • Предоставление среды выполнения кода, в которой:
      • сведена к минимуму вероятность конфликтов в процессе развертывания программного обеспечения и управления его версиями;
      • гарантируется безопасное выполнение кода, включая код, созданный неизвестным или не полностью доверенным сторонним изготовителем;
      • исключаются проблемы с производительностью сред выполнения скриптов или интерпретируемого кода;

      Платформа .NET Framework изменяется ежемесячно с устранением ошибок, связанных с безопасностью и надежностью. Платформа .NET Framework будет по-прежнему включена в состав Windows. Исключать ее не планируется. Вам не нужно переносить приложения платформа .NET Framework, но для новой разработки используйте .NET 6 или более поздней версии.

      Платформа .NET Framework состоит из общеязыковой среды выполнения (среды CLR) и библиотеки классов .NET Framework. Основой платформы .NET Framework является среда CLR. Среду выполнения можно считать агентом, который управляет кодом во время выполнения и предоставляет основные службы, такие как управление памятью, управление потоками и удаленное взаимодействие. При этом средой накладываются условия строгой типизации и другие виды проверки точности кода, обеспечивающие безопасность и надежность. Фактически основной задачей среды выполнения является управление кодом. Код, который обращается к среде выполнения, называют управляемым кодом, а код, который не обращается к среде выполнения, называют неуправляемым кодом. Библиотека классов является комплексной объектно-ориентированной коллекцией повторно используемых типов, которые применяются для разработки приложений — начиная с обычных приложений, запускаемых из командной строки, и приложений с графическим интерфейсом (GUI) и заканчивая приложениями, использующими последние технологические возможности ASP.NET, такие как веб-формы и веб-службы XML.

      Платформа .NET Framework может размещаться неуправляемыми компонентами, которые загружают среду CLR в собственные процессы и запускают выполнение управляемого кода, создавая таким образом программную среду, позволяющую использовать средства как управляемого, так и неуправляемого выполнения. Платформа .NET Framework не только предоставляет несколько базовых сред выполнения, но также поддерживает разработку базовых сред выполнения независимыми производителями.

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

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

      В следующих разделах приводится более подробное описание основных возможностей платформы .NET Framework.

      Возможности среды CLR

      Среда CLR управляет памятью, выполнением потоков, выполнением кода, проверкой безопасности кода, компиляцией и другими системными службами. Эти средства являются внутренними для управляемого кода, который выполняется в среде CLR.

      По соображениям безопасности управляемым компонентам присваиваются разные степени доверия, зависящие от ряда факторов, в число которых входит их происхождение (например, Интернет, сеть предприятия или локальный компьютер). Это означает, что управляемый компонент может или не может выполнять операции доступа к файлам, операции доступа к реестру или другие важные функции, даже если он используется в одном и том же активном приложении.

      Среда выполнения также обеспечивает надежность кода, реализуя инфраструктуру строгой типизации и проверки кода, которую называют системой общих типов (CTS). Система общих типов обеспечивает самоописание всего управляемого кода. Различные языковые компиляторы корпорации Microsoft и независимых изготовителей создают управляемый код, удовлетворяющий системе общих типов . Это означает, что управляемый код может принимать другие управляемые типы и экземпляры, при этом обеспечивая правильность типов и строгую типизацию.

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

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

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

      Среда выполнения разработана для повышения производительности. Хотя общеязыковая среда выполнения предоставляет многие стандартные службы времени выполнения, управляемый код никогда не интерпретируется. Средство компиляции по требованию (JIT) позволяет выполнять весь управляемый код на машинном языке компьютера, где он запускается. Между тем диспетчер памяти устраняет возможность фрагментации памяти и увеличивает объем адресуемой памяти для дополнительного повышения производительности.

      Наконец, среда выполнения может размещаться в высокопроизводительных серверных приложениях, таких как Microsoft SQL Server и службы IIS (Internet Information Services). Такая инфраструктура позволяет использовать управляемый код для написания собственной логики программ, пользуясь при этом высочайшей производительностью лучших производственных серверов, которые поддерживают размещение среды выполнения.

      Библиотека классов .NET Framework

      Библиотека классов платформы .NET Framework представляет собой коллекцию типов, которые тесно интегрируются со средой CLR. Библиотека классов является объектно-ориентированной. Она предоставляет типы, от которых управляемый код пользователя может наследовать функции. Это не только упрощает работу с типами .NET Framework, но и сокращает время изучения новых средств платформы .NET Framework. Кроме того, компоненты независимых производителей можно легко объединять с классами платформы .NET Framework.

      Например, в классах коллекций .NET Framework реализуется набор интерфейсов для разработки пользовательских классов коллекций. Пользовательские классы коллекций легко объединяются с классами .NET Framework.

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

      • Консольные приложения. См. статью Построение консольных приложений.
      • Приложения с графическим интерфейсом Windows (Windows Forms). См. статью Windows Forms.
      • Приложения Windows Presentation Foundation (WPF). См. статью Windows Presentation Foundation.
      • Приложения ASP.NET. См. статью Разработка веб-приложений с помощью ASP.NET.
      • службы Windows; См. основные сведения о приложениях служб Windows.
      • Сервисноориентированные приложения, использующие Windows Communication Foundation (WCF). См. статью Разработка сервисноориентированных приложений с помощью WCF.
      • Приложения, поддерживающие бизнес-процессы Windows Workflow Foundation (WF). См. Windows Workflow Foundation.

      Классы Windows Forms представляют собой полный набор типов, существенно упрощающих разработку графических интерфейсов пользователя Windows. При написании приложения веб-форм ASP.NET можно использовать классы веб-форм.

      См. также

      • Требования к системе
      • Руководство по установке
      • Руководство по разработке
      • Инструменты
      • Примеры и руководства .NET
      • Браузер API .NET

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *