Открыть сервисСервис

.NET — платформа Microsoft

.NET (читается «дотнет») — это бесплатная, кроссплатформенная платформа с открытым исходным кодом для разработки приложений, созданная корпорацией Microsoft. Она объединяет набор инструментов, библиотек и среду выполнения (runtime), позволяющих создавать веб-приложения, облачные сервисы, десктопные программы, игры, мобильные приложения и микросервисы на языках C#, F# и Visual Basic .NET. Платформа поддерживает операционные системы Windows, Linux и macOS.

История

Первая версия .NET Framework была выпущена Microsoft в 2002 году и изначально была доступна только для Windows. Платформа включала среду выполнения CLR (Common Language Runtime) и обширную классическую библиотеку классов (Base Class Library). В течение 2000-х годов .NET Framework развивался, достигнув версии 4.8.

В 2016 году Microsoft представила новое поколение платформы — .NET Core, которое стало кроссплатформенным и с открытым исходным кодом (лицензия MIT). В 2020 году вышел .NET 5, объединивший .NET Core и .NET Framework в единую платформу. С этого момента название «.NET» без суффикса «Core» используется для обозначения современной платформы. Релизы выходят раз в год, а каждая LTS-версия (с длительной поддержкой) поддерживается три года.

Архитектура

Платформа состоит из нескольких ключевых компонентов:

  • CLR (Common Language Runtime) — среда выполнения, управляющая памятью, потоками, безопасностью и компиляцией IL-кода (Intermediate Language) в машинный код.
  • Библиотека классов (BCL) — набор базовых API для работы с файлами, сетью, коллекциями, многопоточностью и др.
  • ASP.NET — фреймворк для построения веб-приложений и API.
  • Entity Framework — ORM для доступа к базам данных.
  • CLI (Common Language Infrastructure) — стандарт, описывающий среду выполнения, что позволяет использовать на платформе различные языки программирования.

Код на C#, F# или VB.NET компилируется в промежуточный IL-код, который выполняется в CLR. При запуске JIT-компилятор преобразует IL в машинный код конкретной платформы.

Основные технологии и фреймворки

ТехнологияНазначение
ASP.NET CoreВеб-приложения, Web API, Blazor
MAUIКроссплатформенные десктопные и мобильные приложения
Entity Framework CoreORM для работы с БД
WPF / WinFormsНативные Windows-приложения
.NET MAUIЕдиный код для Android, iOS, macOS, Windows
gRPC, SignalRМикросервисы и реальное время
ML.NETМашинное обучение

Языки

Основной язык платформы — C#, один из самых используемых языков в мире по данным Stack Overflow и TIOBE. Также поддерживаются F# (функциональное программирование) и Visual Basic .NET. Благодаря системе CLI возможна интеграция кода на разных языках в одном проекте.

Применение

.NET применяется в широком спектре задач:

.NET в России

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

Открытый исходный код

Начиная с .NET Core, вся платформа развивается как open source-проект на GitHub. Исходный код доступен под лицензией MIT. Ежегодно платформу поддерживают тысячи внешних контрибьюторов, включая разработчиков из России и других стран.

Сравнение с альтернативами

ПлатформаЯзыкКроссплатформенность
.NETC#, F#, VB.NETWindows, Linux, macOS, Android, iOS
Java (JVM)Java, KotlinWindows, Linux, macOS, Android
Node.jsJavaScript, TypeScriptWindows, Linux, macOS
GoGoWindows, Linux, macOS

По производительности современные версии .NET конкурируют с Java и Go, часто превосходя их в отдельных бенчмарках, особенно в асинхронных сценариях и работе с памятью.

Источники:

  • Официальная документация Microsoft Learn — раздел .NET (learn.microsoft.com/ru-ru/dotnet)
  • Релизные заметки .NET (dotnet.microsoft.com)
  • Сайт проекта с открытым исходным кодом (github.com/dotnet/runtime)
  • Stack Overflow Developer Survey — ежегодные статистические данные по использованию языков и платформ
Заметили ошибку или не согласны с информацией в статье? Напишите нам support@bfometr.ru