.NET Framework, как все помнят — мощная, но очень требовательная, требует размещения Windows, требует определенного опыта для развертывания, программы «тяжелые» и требуют специальной среды для запуска, отлично, когда у вас есть приличные средства и время, чтобы инвестировать в подготовку архитектуры. Но если у вас ограниченный бюджет или вы создаете меньшую систему, вероятно, лучше этого избегать, поскольку есть более дешевые и простые решения…

А сейчас нечто соверешнно другое:

.NET ядро

Релиз Microsoft в 2016 году должен был навсегда изменить мир .NET. Бесплатный, с открытым исходным кодом и кроссплатформенный. Впервые в истории разработчики смогли полностью разработать и развернуть свои приложения с использованием .NET в операционных системах, отличных от Windows (давайте не будем говорить здесь о Mono).

Core больше не требует Visual Studio. На самом деле можно использовать любой текстовый редактор, а приложение можно скомпилировать и запустить с помощью интерфейса командной строки.

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

Практически все проблемы, которые были у «старого» .NET, были решены очень элегантно и успешно.

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

Давайте внимательно посмотрим на то, что изменилось.

Как это соотносится с фреймворком .NET

Большим сюрпризом и очень интересным шагом является тот факт, что .NET Core не только бесплатен, но и имеет открытый исходный код! Но что это на самом деле означает для того, кто хочет начать новый проект и рассматривает технологию? Открытый исходный код дает разработчикам доступ к знаниям, помогая им лучше понять структуру, что помогает создавать библиотеки и инструменты, которые можно использовать для решения задач. Это также может помочь решить проблемы, которые могут возникнуть во время разработки. Это также делает продукт более надежным.

Каковы другие преимущества .NET Core? Мы избавляемся от ограничения использования ОС Windows и IIS Server — .NET Core позволяет нам разрабатывать на любой ОС, которую мы хотим, используя любую IDE, которую мы хотим (при условии, что она поддерживает .NET Core, но, поверьте мне, есть из чего выбрать от)! Серверы Linux являются наиболее популярными доступными услугами хостинга, и теперь их можно использовать для запуска проектов .NET. Аккуратный!

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

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

Отныне мы также можем использовать разработку в стиле командной строки на каждой ОС (Mac, Linux и Windows), конечно, мы по-прежнему можем выполнять весь процесс сборки, тестирования и запуска нашего решения из нашей IDE, но приятно иметь альтернатива, особенно для проектов, которые не могут позволить себе Visual Studio или просто не хотят ее использовать.

Как это соотносится с другими фреймворками

В мире серверной разработки доступно множество языков и фреймворков, но лидерами являются .NET Core, Node.JS, Spring и Symphony. Давайте посмотрим поближе и сравним их друг с другом. У всех есть большие, активные и яркие сообщества.

Что делает такие фреймворки, как Python’s Django, PHP’s Symphony и Node.JS Express, такими популярными? Они бесплатны, с открытым исходным кодом, их можно развернуть на большинстве операционных систем, у них есть однородные сообщества с множеством готовых к использованию пакетов, библиотек и шаблонов. Многие инструменты могут помочь в разработке и развертывании приложений, многие из них бесплатны. Приложения, написанные на этих языках, легкие, но эффективные.

Это аргументы против выбора .NET Core?

Нет! Все перечисленные выше преимущества полностью применимы и к .NET Core!

  • Бесплатная среда разработки? Проверено! VS Code, VS Community или практически любой текстовый редактор, используемый с CLI.
  • Сообщество? Проверено! Сосредоточено на Stack Overflow (более 10 000 ответов на темы)
  • Несколько поддерживаемых ОС? Проверено! macOS, Linux и Windows, а также с поддержкой Docker!
  • Легкий? Проверено! Приложения .NET Core являются модульными, то есть их можно создавать только из необходимых компонентов.

Итак, все проверено, но подождите — есть еще! Что выделяет .NET Core среди других фреймворков, так это выделенная облачная платформа, как вы, возможно, знаете из наших предыдущих статей — Azure.

Кому будет полезно использовать .NET Core?

Как многие помнят, .NET Framework лучше всего подходил для корпоративных, больших и, как правило, длительных проектов. Это по-прежнему верно для .NET Core. Он обеспечивает высоконадежную среду с очень хорошей производительностью, позволяя масштабировать приложение, тестировать и размещать или переносить его в облако. Высокий уровень безопасности позволяет использовать его даже в самых требовательных к безопасности приложениях. Язык C#, используемый в Core, имеет тот же синтаксис, поэтому разработчики, ранее работавшие с .NET Framework, смогут быстро переключиться на новую версию.

А как насчет небольших проектов? Или стартапы? В таких случаях бюджет обычно ограничен, и нет необходимости в таких сложных решениях. Время и деньги часто играют важную роль.

.NET Core — идеальный выбор для таких проектов!

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

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

Вывод

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

Теперь старый .NET мертв, да здравствует .NET Core!

Хотите разработать свой следующий проект с помощью .NET Core? Не стесняйтесь связаться с нами! Наш многолетний опыт в этой технологии будет использован с пользой!