Что такое .NET Framework? Объяснять Archiтектура и компоненты

⚡ Умное резюме

.NET Framework — это Microsoft платформа для создания и управления Windows Он объединяет среду разработки для настольных, веб- и сервисных приложений. Включает в себя среду выполнения Common Language Runtime, общую библиотеку классов и такие языки, как C# и VB.NET, в единую управляемую среду разработки.

  • 🧩 Определение: .NET Framework — это Windows— Единственный набор инструментов, языков и библиотек для настольных и веб-приложений.
  • 🇧🇷 Archiтекстура: Среда выполнения Common Language Runtime выполняет управляемый код, а библиотеки классов предоставляют многократно используемый, готовый функционал.
  • ⚙️ Основные компоненты: Среда выполнения CLR, библиотека классов и поддерживаемые языки программирования работают вместе для компиляции и запуска приложений.
  • 🛡️ Принципы дизайна: Взаимодействие, переносимость, безопасность, автоматическое управление памятью и упрощенное развертывание определяют структуру платформы.
  • 🌐 Типы приложений: WinForms используется для создания настольных приложений, ASP.Net — для разработки веб-сайтов, а ADO.Net — для подключения к базам данных.
  • 🤖 Актуальность ИИ: ML.NET и ONNX Runtime добавляют возможности машинного обучения, а GitHub Copilot ускоряет разработку на .NET.

Что такое .NET Framework?

Что такое .Net Framework?

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

Платформа .NET была разработана для создания приложений, которые работали бы на ней. Windows Платформа. Первая версия .Net framework была выпущена в 2002 году. Версия называлась .Net framework 1.0. Microsoft С тех пор платформа .NET Framework значительно продвинулась, и последняя версия — .NET Framework 4.8.1.

Microsoft Платформа .NET Framework может использоваться для создания как... на основе формы и Веб- приложений. Веб-службы также может быть разработан с использованием .Net framework.

Платформа также поддерживает различные языки программирования, такие как Visual Basic и C#. Таким образом, разработчики могут выбрать язык для разработки необходимого приложения. В этой главе вы познакомитесь с некоторыми основами платформы .Net.

. Net Framework Archiтекстура

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

Ниже представлена ​​базовая архитектура платформы .NET.

. Net Framework ArchiДиаграмма тектуры

. Net Framework ArchiДиаграмма тектуры

Компоненты .NET

Архитектура платформы .NET основана на следующих ключевых компонентах:

1. Общеязыковая среда выполнения

Common Language Runtime (CLR) является исполнительным механизмом в архитектуре .Net, на котором выполняются программы .Net.

Система CLR обладает следующими ключевыми характеристиками:

Обработка исключений — Исключения — это ошибки, возникающие при выполнении приложения. Примеры исключений:

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

Вывоз мусора — Сборка мусора — это процесс удаления ненужных ресурсов, когда они больше не требуются. Примеры сборки мусора:

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

Работа с различными языками программирования — Как отмечалось в предыдущем разделе, разработчик может создавать приложения на различных языках программирования .Net.

  1. Язык — Первый уровень — это сам язык программирования; наиболее распространенными являются VB.Net и C#.
  2. составитель — Для каждого языка программирования существует свой отдельный компилятор. Так, для языка VB.Net будет использоваться отдельный компилятор VB.Net. Аналогично, для C# будет использоваться другой компилятор.
  3. общеязыковая среда выполнения — Это заключительный слой в .Net, используемый для запуска программы .Net, разработанной на любом языке программирования. язык программированияПоследующий компилятор отправляет программу на уровень CLR для запуска приложения .Net.

Компоненты .NET

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

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

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

Большинство методов разделены либо на System.*, либо на Microsoft.* пространства имен. (Звездочка * просто означает ссылку на все методы, входящие в состав System или Microsoft пространство имён.)

Пространство имен — это логическое разделение методов, объединяющее связанные классы под одним именем.

3. Языки

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

WinForms — Это используется для разработкиping Приложения, основанные на формах, которые запускаются на компьютере конечного пользователя. Блокнот — пример клиентского приложения.

ASP.Net — Это используется для разработкиping веб-приложения, предназначенные для работы в любом браузере, таком как Internet Explorer, Chrome или Firefox.

  • Веб-приложение будет обрабатываться на сервере, на котором будут установлены службы Internet Information Services.
  • Интернет-информационные службы, или IIS, — это Microsoft компонент, используемый для выполнения Асп.Нет Приложение.
  • Результат выполнения затем отправляется на клиентские машины, а выходные данные отображаются в браузере.

АДО.Нет — Эта технология используется для разработки приложений, взаимодействующих с базами данных, такими как... Oracle or Microsoft SQL Сервер.

Microsoft всегда гарантирует, что платформы .Net соответствуют всем поддерживаемым Windows операционных систем.

Принцип проектирования .Net Framework

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

1) Совместимость — Платформа .NET обеспечивает широкую обратную поддержку. Предположим, у вас есть приложение, созданное на её основе. старая версия .Net frameworkДопустим, версия 2.0. Запуск того же приложения на компьютере с более высокой версией, скажем, 3.5, также будет работать. Это потому, что с каждым релизом... Microsoft гарантирует, что старые версии фреймворка хорошо сочетаются с последней версией.

2) Портативность — Приложения, созданные на основе платформы .NET, могут работать на любой платформе. Windows Платформа. И вот, в последнее время, Microsoft также планирует сделать Microsoft продукты работают на других платформах, таких как iOS и Linux.

3) Безопасность — Платформа .NET Framework обладает хорошим механизмом безопасности. Встроенный механизм безопасности помогает как в проверке, так и в подтверждении работоспособности приложений. Каждое приложение может явно определить свой механизм безопасности. Каждый механизм безопасности используется для предоставления пользователю доступа к коду или к работающей программе.

4) Управление памятью — Среда выполнения Common Language Runtime (CLR) выполняет всю работу управление памятьюПлатформа .NET Framework обладает всеми необходимыми возможностями для обнаружения ресурсов, не используемых работающей программой, и последующего их освобождения. Это осуществляется с помощью программы, называемой «сборщиком мусора», которая работает как часть платформы .NET Framework. Сборщик мусора запускается через регулярные интервалы и постоянно проверяет, какие системные ресурсы не используются, и освобождает их соответствующим образом.

5) Упрощенное развертывание — Платформа .NET также содержит инструменты для упаковки приложений, созданных на её основе. Эти пакеты затем могут распространяться на клиентские машины, где они автоматически устанавливают приложение.

Часто задаваемые вопросы (FAQ)

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

Common Language Runtime (CLR) — это движок, который выполняет управляемый код, обрабатывает память и исключения. Common Language Specification (CLS) — это набор правил, которым следует каждый язык .NET, чтобы компоненты, написанные на разных языках, могли безопасно взаимодействовать друг с другом.

Платформа .NET Framework поддерживает несколько языков, компилируемых в общий промежуточный язык. Наиболее широко используемые из них: C# и VB.NET, с F# для функционального программирования. Все они используют одну и ту же среду выполнения, библиотеку классов и инструменты.

Нет. Платформа .NET Framework — это... Windows— только. Для целевой платформы Linux или macOS Вы используете современную платформу .NET, ранее известную как .NET Core, которая является кроссплатформенной. Более старый проект Mono также запускал некоторый код .NET Framework на других операционных системах.

Да. Платформа .NET Framework бесплатна для скачивания и использования, и она поставляется встроенной в систему. WindowsИнструменты разработки, такие как Visual Studio Community и Visual Studio Code Они также бесплатны для отдельных лиц, небольших команд и проектов с открытым исходным кодом.

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

Да. ML.NET позволяет обучать и запускать модели машинного обучения непосредственно на C#, а среда выполнения ONNX Runtime выполняет предварительно обученные модели глубокого обучения. Вы также можете вызывать облачные сервисы ИИ, поэтому приложения .NET добавляют интеллектуальные функции, не покидая экосистему.

Да. GitHub Copilot предлагает использовать код на C# и VB.NET в Visual Studio. VS CodeГенерация классов, методов и шаблонного кода на основе комментариев. Рассматривайте результат как черновой вариант и проверьте его, поскольку сгенерированный код может не учитывать граничные случаи или соглашения проекта.

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