Перейти к содержимому

Чем отличается net core от net framework

  • автор:

.NET и .NET Framework для серверных приложений

Для создания серверных приложений доступны две поддерживаемые реализации .NET.

Реализация Включенные версии
.NET .NET Core 1.0–3.1, .NET 5 и более поздние версии .NET.
.NET Framework .NET Framework 1.0–4.8

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

Используйте среду .NET для создания серверных приложений в следующих случаях:

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

Используйте среду .NET Framework для создания серверных приложений в следующих случаях:

  • приложение в настоящий момент использует среду .NET Framework (мы рекомендуем расширять приложения, а не переносить их в другую среду);
  • приложение использует сторонние библиотеки или пакеты NuGet, недоступные для .NET;
  • приложение использует технологии .NET Framework, недоступные для .NET;
  • приложение использует платформу, не поддерживающую .NET.

Случаи использования .NET

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

Создание кроссплатформенных приложений

Если веб-приложение или служба будут работать на нескольких платформах (Windows, Linux и macOS), используйте платформу .NET.

В среде .NET также можно использовать упомянутые ранее операционные системы в качестве рабочих станций для разработки. Visual Studio предоставляет интегрированную среду разработки (IDE) для Windows и macOS. Можно также использовать редактор Visual Studio Code, который выполняется на платформах macOS, Linux и Windows. Visual Studio Code поддерживает .NET, включая технологию IntelliSense и отладку. С .NET работает большинство сторонних редакторов, например Sublime, Emacs и VI. Эти сторонние редакторы получают доступ к функциям в редакторе IntelliSense с помощью Omnisharp. Вы также можете избежать редактора кода и напрямую использовать интерфейс командной строки .NET, доступный для всех поддерживаемых платформ.

Архитектура микрослужб

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

Пользователям на выбор предоставляется множество инфраструктурных платформ. Для больших и сложных систем микрослужб можно использовать Azure Service Fabric. Служба приложений Azure лучше всего подойдет для микрослужб без сохранения состояния. Альтернативные микрослужбы, основанные на Docker, соответствуют любому подходу к микрослужбам, как описано в разделе Контейнеры . Все эти платформы поддерживают .NET и идеально подходят для размещения микрослужб.

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

Контейнеры

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

Контейнеры Docker можно размещать в собственной инфраструктуре Linux или Windows или в облачной службе, например Служба Azure Kubernetes. Служба Azure Kubernetes может выполнять оркестрацию и масштабировать приложения на основе контейнеров, а также управлять ими в облаке.

Масштабируемые системы с высокой производительностью

Если для вашей системы требуется максимальная производительность и возможности масштабирования, мы рекомендуем использовать среды .NET и ASP.NET Core. Высокопроизводительная среда выполнения сервера для Windows Server и Linux делает ASP.NET Core высокопроизводительной веб-платформой для тестов TechEmpower.

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

Параллельные версии .NET на уровне приложения

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

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

Случаи использования .NET Framework

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

Готовые приложения .NET Framework

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

Сторонние библиотеки .NET и пакеты NuGet, недоступные для .NET

.NET Standard позволяет совместно использовать код во всех реализациях .NET, включая .NET Core/5+. В .NET Standard 2.0 этот режим совместимости позволяет проектам .NET Standard и .NET ссылаться на библиотеки .NET Framework. Дополнительные сведения см. в статье Поддержка библиотек платформы .NET Framework.

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

Технологии .NET Framework, недоступные в .NET

Некоторые технологии .NET Framework недоступны в среде .NET. Ниже приведен список самых распространенных технологий, которые недоступны в .NET:

  • ASP.NET Web Forms приложения: ASP.NET Web Forms доступны только в платформа .NET Framework. ASP.NET Core нельзя использовать для ASP.NET Web Forms.
  • веб-страницы ASP.NET приложения: веб-страницы ASP.NET не включаются в ASP.NET Core.
  • Службы, связанные с рабочими процессами: Windows Workflow Foundation (WF), службы рабочих процессов (WCF + WF в одной службе) и WCF Data Services (ранее известные как «службы ADO.NET Data Services») доступны только в платформа .NET Framework.
  • Поддержка языков. Visual Basic и F# в настоящее время поддерживаются в .NET, но не для всех типов проектов. Список поддерживаемых шаблонов проектов см. в статье о параметрах шаблона для dotnet new.

Платформа не поддерживает .NET

Некоторые платформы Майкрософт и платформы сторонних поставщиков не поддерживают среду .NET. Некоторые службы Azure предоставляют пакеты SDK, недоступные в среде .NET. В таких случаях в качестве альтернативы клиентскому пакету SDK можно использовать REST API.

См. также

  • Выбор между ASP.NET и ASP.NET Core
  • ASP.NET Core с целевой платформой .NET Framework
  • Целевые платформы
  • Общие сведения о платформе .NET
  • Перенос кода в .NET 5 из .NET Framework
  • Общие сведения о .NET и Docker
  • Реализации .NET
  • Микрослужбы .NET. Архитектура контейнерных приложений .NET

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

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

Всё о .NET Framework

.NET Framework — программная платформа, разработанная компанией Microsoft, которая предоставляет среду выполнения для приложений на языке программирования C#, Visual Basic .NET и других языках, совместимых с платформой .NET. Он предоставляет разработчикам мощные инструменты и библиотеки для создания разнообразных приложений, включая настольные программы, веб-сайты, мобильные приложения и службы в облаке.

Подготовлено_выпускником —>

работа с NET Framework

Получите востребованную профессию бесплатно. Обучение от 1 до 4 месяцев

Архитектура .NET

Архитектура .NET Framework основана на общеязыковой среде исполнения (Common Language Runtime, CLR), которая является основой приложений на платформе. CLR обеспечивает управление памятью, безопасность типов, обработку исключений и другие ключевые функции исполнения приложений.

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

Кто работает с .NET Framework

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

Разработчики, работающие с .NET Framework, используют языки программирования, такие как C# или Visual Basic .NET, и разрабатывают разнообразные приложения, включая настольные программы, веб-приложения, мобильные приложения и службы в облаке.

Как установить .NET Framework

Установка .NET Framework может зависеть от версии операционной системы Windows, которую вы используете. Обычно .NET Framework поставляется вместе с операционной системой или может быть установлен через Центр обновления Windows.

установка NET Framework

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

Чем .NET Framework отличается от .NET Core

.NET Framework и .NET Core являются двумя различными вариантами платформы .NET, предоставляемыми компанией Microsoft.

Вот некоторые отличия между ними:

Кроссплатформенность: .NET Core был разработан с учетом кроссплатформенности, что означает, что вы можете разрабатывать приложения .NET Core для разных операционных систем, таких как Windows, macOS и Linux. В то время как .NET Framework является преимущественно платформой для разработки приложений под Windows.

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

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

Поддержка : .NET Framework имеет более широкую поддержку и наиболее распространен среди разработчиков. В то время как .NET Core активно развивается и получает все большую популярность.

Стоит ли изучать .NET

Изучение .NET Framework является полезным для разработчиков, особенно тех, кто работает с платформой Windows и разрабатывает приложения на языке программирования C# или Visual Basic .NET. .NET Framework предоставляет мощные инструменты и библиотеки для создания различных типов приложений, включая настольные программы, веб-сайты, мобильные приложения и службы в облаке.

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

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

Начать карьеру в IT вы можете после бесплатного обучения в проекте «Содействие занятости»:

«Тестировщик программного обеспечения: с нуля до первых проектов»

«Web-программист: с нуля до первых проектов»

Получите востребованную профессию бесплатно. Обучение от 1 до 4 месяцев

Что такое .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, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.

    .NET Framework vs .NET Core: основные различия

    Microsoft .NET – это среда разработки программного обеспечения, предназначенная как для создания автономных компьютерных приложений, так и для веб-приложений. .NET Core – это скорее подмножество с некоторыми фундаментальными изменениями. Ядро .NET позиционируется как следующая большая вещь, поскольку оно поддерживает кросс-платформы, такие как Windows, Linux, macOS и мобильные устройства. Важно знать разницу между ними.

    Кросс-платформенная поддержка

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

    И .NET Core, и .NET Framework используют один и тот же API под названием .NET Standard. Ядро имеет открытый исходный код, а фреймворк – это реализация только для Windows. В целом Core более легкий и современный по сравнению с фреймворком.

    Microsoft разработала Core для работы с Docker в серверных частях на основе микросервисов. Помимо этого, большинство различий заключается в пакете NuGet. Entity Framework Core немного отличается от Entity Framework 6, который работает на .NET Framework. ASP.NET Core кардинально отличается от ASP.NET 4.

    Когда использовать .NET Framework

    .NET стоит использовать вместо .NET Core только в том случае, если вы планируете развертывание на Windows. Если вы активно используете пакеты и библиотеки Windows, такие как Windows Forms, WPF, веб-формы / страницы ASP.NET и Windows Workflow Foundation, то платформа .NET для вас.

    Когда использовать .NET Core

    Когда вам нужна кросс-платформенная совместимость, включая Docker и микросервисы, ядро .NET – лучший выбор. Если вы не используете какие-либо специальные инструменты, библиотеки или пакеты NuGet для Windows, которые зависят от .NET Framework, .NET Core – лучший выбор.

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

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