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

NET Framework

NET Framework — это программная платформа, выпущенная компанией Microsoft, предназначенная для разработки и выполнения приложений, преимущественно для операционных систем семейства Windows. Она представляет собой среду выполнения (common language runtime, CLR) и обширную библиотеку классов (Framework Class Library, FCL), предоставляющую разработчикам готовые компоненты для работы с данными, пользовательским интерфейсом, сетью, файловой системой и другими системными функциями. Ключевой особенностью .NET Framework является поддержка множества языков программирования (C#, Visual Basic .NET, C++/CLI и другие), код которых компилируется в единый промежуточный язык (Common Intermediate Language, CIL), исполняемый средой CLR.

История

Предпосылки и создание

В конце 1990-х годов Microsoft столкнулась с проблемой фрагментации своих технологий разработки: существовали отдельные платформы для веб-приложений (ASP), настольных приложений (Win32 API, MFC, Visual Basic), баз данных (ADO) и т. д. Разработчики вынуждены были изучать разные API и парадигмы. В 1998 году под руководством Андерса Хейлсберга (создателя Turbo Pascal и Delphi) началась работа над проектом Next Generation Windows Services (NGWS), который должен был стать единой платформой для всех типов приложений.

Первая бета-версия .NET Framework была представлена в 2000 году на конференции Professional Developers Conference (PDC). Официальный релиз .NET Framework 1.0 состоялся 13 февраля 2002 года одновременно с выходом Visual Studio .NET 2002.

Основные версии

ВерсияДата выходаКлючевые особенности
1.02002Первый релиз. Поддержка C#, VB.NET, ASP.NET, Windows Forms, ADO.NET.
1.12003Улучшенная поддержка мобильных устройств (ASP.NET Mobile Controls), встроенная поддержка IPv6.
2.02005Значительное расширение библиотеки классов (Generics, Nullable types, Partial classes), улучшение производительности CLR.
3.02006Добавлены Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), Windows Workflow Foundation (WF), Windows CardSpace.
3.52007LINQ (Language Integrated Query), ASP.NET AJAX, улучшения в WCF и WPF.
4.02010Parallel Extensions (PLINQ, Task Parallel Library), Dynamic Language Runtime (DLR), Managed Extensibility Framework (MEF).
4.52012Улучшенная асинхронность (async/await), поддержка Metro-приложений для Windows 8, улучшение производительности серверных приложений.
4.62015Поддержка 64-разрядных JIT-компиляторов (RyuJIT), улучшения в WPF и ASP.NET.
4.72017Поддержка Windows 10 Creators Update, улучшения в WPF (Touch, Stylus).
4.82019Последняя версия. Улучшения в WPF, ASP.NET, JIT-компиляторе.

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

Архитектура

Common Language Runtime (CLR)

CLR — это виртуальная машина, обеспечивающая выполнение управляемого кода. Она отвечает за:

Framework Class Library (FCL)

FCL — это обширная иерархическая библиотека классов, охватывающая практически все аспекты разработки:

Common Type System (CTS) и Common Language Specification (CLS)

CTS определяет единую систему типов, которую должны поддерживать все языки .NET. CLS — это подмножество правил, обеспечивающих совместимость между языками (например, C# может вызывать код на VB.NET).

Классификация приложений

Настольные приложения

Веб-приложения

Сервисы и фоновые процессы

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

Сборки (DLL-файлы), содержащие переиспользуемый код для других приложений.

Применение и значение

Корпоративная разработка

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

Веб-разработка

ASP.NET является одной из популярных платформ для создания веб-сайтов и веб-приложений, особенно в сочетании с Microsoft SQL Server и Internet Information Services (IIS).

Разработка игр

Среда .NET Framework используется в игровых движках, например, Unity (C# является основным языком скриптов).

Научные и инженерные расчеты

Библиотеки для работы с математикой, статистикой, визуализацией данных (например, Math.NET, ILNumerics).

Критика и ограничения

Интересные факты

Источники

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →