Обучение
Модуль
Приступите к изучению .NET. Узнайте, что такое .NET и каков принцип его работы. Быстро создавайте небольшие приложения в веб-среде .NET.
Этот браузер больше не поддерживается.
Выполните обновление до Microsoft Edge, чтобы воспользоваться новейшими функциями, обновлениями для системы безопасности и технической поддержкой.
.NET предоставляет среду выполнения, называемую средой CLR, которая запускает код и предоставляет службы, которые упрощают процесс разработки.
Компиляторы и средства предоставляют функциональные возможности среды CLR и позволяют писать код, который используется в управляемой среде выполнения. Код, разработанный с использованием языкового компилятора для среды выполнения, называют управляемым. В нем используются преимущества таких средств, как объединение языков программирования, объединенная обработка исключений, усиленная безопасность, поддержка отслеживания версий и развертывания, упрощенная модель взаимодействия компонентов, а также службы отладки и профилирования.
Примечание
Компиляторы и средства могут создавать выходные данные, которые среда CLR может использовать, так как система типов, формат метаданных и среда выполнения (виртуальная система выполнения) определяются общедоступным стандартом, спецификацией инфраструктуры ОБЩЕЙ языка ECMA. Дополнительные сведения см. в разделе Спецификации ECMA для C# и инфраструктуры Common Language Infrastructure (CLI).
Чтобы включить в среде выполнения предоставление служб управляемому коду, языковые компиляторы должны предоставлять метаданные с описанием типов, членов и ссылок в коде. Метаданные хранятся вместе с кодом. Они содержатся в каждом загружаемом переносимом исполняемом (PE) файле среды CLR. Метаданные в среде выполнения используются для поиска и загрузки классов, размещения экземпляров в памяти, разрешения имен при вызове методов, создания машинного кода, обеспечения безопасности и установки границ контекста времени выполнения.
Среда выполнения автоматически обрабатывает макет объектов и управляет ссылками на объекты, освобождая их при их использовании. Объекты, время жизни которых управляется подобным образом, называются управляемыми данными. Сборка мусора устраняет утечки памяти и некоторые другие распространенные ошибки программирования. Если код управляется, вы можете использовать управляемые, неуправляемые или неуправляемые данные в приложении .NET. Так как компиляторы языка предоставляют собственные типы, такие как примитивные типы, вы не всегда знаете или должны знать, управляются ли ваши данные.
Среда CLR упрощает разработку компонентов и приложений, объекты которых могут работать в разных языках. Объекты, написанные на разных языках, могут взаимодействовать друг с другом, а их поведение может быть тесно интегрировано. Например, разработчик может определить класс, а затем на другом языке создать производный от него класс или вызвать метод из исходного класса. Можно также передать экземпляр класса в метод класса, написанного на другом языке. Эта межязычная интеграция возможна, так как компиляторы и средства языка, предназначенные для среды выполнения, используют систему общего типа, определенную средой выполнения. Они следуют правилам среды выполнения для определения новых типов и создания, использования, сохранения и привязки к типам.
В составе своих метаданных все управляемые компоненты содержат сведения о компонентах и ресурсах, на базе которых они построены. Среда выполнения использует эти сведения, чтобы обеспечить наличие всех необходимых ресурсов для компонента или приложения. Это снижает вероятность сбоев кода из-за каких-либо неудовлетворенных зависимостей. Сведения о регистрации и данные о состоянии больше не хранятся в реестре, где их может быть трудно установить и поддерживать. Вместо этого сведения о типах, которые вы определяете, и их зависимости хранятся с кодом в качестве метаданных. Таким образом задача компонента реплика и удаления менее сложна.
Языковые компиляторы и программы предоставляют функции среды выполнения так, чтобы они были полезны и интуитивно понятны для разработчиков. Некоторые функции среды выполнения могут быть более заметными в одной среде, чем в другой. Характеристики среды выполнения зависят от используемых языковых компиляторов и программ. Например, если вы разработчик Visual Basic, вы можете заметить, что в среде CLR язык Visual Basic имеет более объектно-ориентированные функции, чем раньше. Среда выполнения предоставляет следующие преимущества:
Повышение производительности.
возможность легко использовать компоненты, разработанные на других языках;
расширяемые типы, предоставляемые библиотекой классов;
языковые возможности (например, наследование, интерфейсы и перегрузку) для объектно-ориентированного программирования;
Поддержка явного свободного потока, которая позволяет создавать многопоточные и масштабируемые приложения.
поддержку структурированной обработки исключений;
поддержку настраиваемых атрибутов;
сборка мусора;
использование делегатов вместо указателей на функции для повышения типобезопасности и уровня защиты. Подробнее о делегатах см. в разделе Система общих типов CTS.
Выпуски .NET Core и .NET 5+ имеют отдельную версию продукта, то есть не существует отдельной версии СРЕДЫ CLR. Список версий .NET Core см. в разделе Загрузка .NET Core.
Однако номер версии платформы .NET Framework не всегда соответствует номеру версии среды CLR, которую он содержит. Список версий .NET Framework и соответствующих версий среды CLR см. в разделе Версии и зависимости платформы .NET Framework.
Заголовок | Description |
---|---|
Процесс управляемого выполнения | Описание шагов, необходимых для использования преимуществ общеязыковой среды выполнения. |
Автоматическое управление памятью | Описание выделения и освобождения памяти сборщиком мусора. |
Обзор платформа .NET Framework | Описание ключевых понятий платформы .NET Framework: системы общих типов CTS, межъязыкового взаимодействия, управляемого выполнения, доменов приложений и сборок. |
Система общих типов CTS | Описание того, как типы объявляются, используются и контролируются в среде выполнения в рамках поддержки межъязыковой интеграции. |
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв:
Обучение
Модуль
Приступите к изучению .NET. Узнайте, что такое .NET и каков принцип его работы. Быстро создавайте небольшие приложения в веб-среде .NET.