Обзор ASP.Net Core 3.0 | OTUS

Обзор ASP.Net Core 3.0

ASP.NET Core 3 -- кроссплатформенный, высокопроизводительный и абсолютно беспалый фреймворк от Майкрософт (Microsoft). Да-да вы не ослышались -- беспалый и кроссплатформенный. Это означает, что вы можете использовать его на Linux-подобных серверах.

Кто выбирает ASP.NET Core 3?

Миллионы разработчиков, которые знакомы с ASP.NET 4.x (старые версии не кроссплатформенные) и которые хотят использовать знакомый и мощный инструмент.

ASP.NET Core 3 дает нам следующие преимущества:

  1. Спроектированный для UI (user interface) и веб API.
  2. Удобная система юнит-тестов.
  3. Использует движок Razor, который позволяет сделать html динамическим.
  4. Кроссплатформенный. Т. е. вы можете запускать как на Windows, так и на macOS and Linux.
  5. Опенсорсный т. е. с открытым исходным кодом.
  6. Хорошо интегрирован с современными клиентскими фреймворками (кстати в VS есть очень удобные шаблоны под Angular и React).
  7. Содержит удобные инструменты для хостинга в облаке.
  8. Встроенная система разрешения зависимостей или DI (dependency injection).
  9. Облегченный (т. е. нет тех огромных зависимостей, что были в старых ASP.NET 4.x). Хорошо оптимизирован, что выдает высокую скорость работы. Поддерживает принцип модульности для HTTP-запросов через pipeline (пайплайн).
  10. Ability to host on IIS, Nginx, Apache, Docker or self-host in your own process.
  11. Самое крутое, что можно хостить не только на IIS (веб-сервак чисто под винду) :). Но также на Nginx, Apache, Docker и self-host (т. е. вообще без сторонних серверов, запустил на своем ПК и, пожалуйста, работай.)

В чем же разница ASP.NET Core 2.x, 3.x .NET Framework (старая версия) и .NET Standard?

ASP.NET Core 2.x может работать с ASP.NET Core или .NET Framework. Но имейте в виду, что если вы добавите библиотеку из .NET Framework в свой проект на Core, то она будет работать только на MS Windows. Чтобы убрать такую проблему, Microsoft предлагает использовать промежуточный фреймворк .NET Standard. Не пугайтесь, это не еще какой-то новый бла-бла-бла фреймворк от Майкрософта. Для меня это просто шаблон в VisualStudio, который я должен использовать при разработке библиотек. Используйте это как правило. А язык и всё остальное тут везде одинаковые. Другими словами, если у вас в проекте попадается библиотека на .NET Framework, скорее всего, из-за одной такой «овцы» приложение не будет работать кроссплатформенно. И вам придется арендовать Windows Server, которые заметно дороже Linux-подобных.

Теперь важное замечание! ASP.NET Core 3.0 и выше будет работать только с .NET Core 1.x, 2.x. Как я понял, даже без .NET Standard.

Что уберут или заменят в ASP.NET Core 3:

  1. Json.NET (Newtonsoft.Json) — Newtonsoft уберут и заменят на нативную (родную) реализацию, которая должна работать значительно быстрее предшественника. Работать она будет с использованием нового unsafe-класса Span[T], ReadOnlySpan[T].
  2. Entity Framework Core (Microsoft.EntityFrameworkCore.*).

Больше статей о программировании читайте в моем блоге.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто