Почему .NET Core и C#

.NET Core быстро набирает обороты и эксперты предсказывают, что в 2018 году будет огромный спрос на разработчиков .NET Core и C#.

Легко обучаться

Если вы программируете на C, java или даже на javascript, синтаксис C# будет очень вам знаком. Есть много онлайн-ресурсов, которые помогут вам изучить C#. Многие из них бесплатны, и некоторые из них также являются недорогими.

Современные особенности языка

Язык программирования C# существует около 15 лет и постоянно улучшается. Основные особенности:

  • Строго типизирован
  • Надежные базовые библиотеки классов
  • Асинхронное программирование - простой в использовании шаблон async/await
  • Сборка мусора, автоматическое управление памятью
  • LINQ - язык интегрированных запросов (почти что SQL-запросы как часть языка)
  • Generics - List<T>, Dictionary<T, T>
  • Управление пакетами
  • Совместное использование двоичных файлов на нескольких платформах
  • Простые в использовании фреймворки для создания веб-приложений MVC и API-интерфейсов RESTful

Универсальность

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

Многоплатформенность

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

Удивительные инструменты для разработчиков

Visual Studio всегда считалась одной из лучших IDE, доступных для разработчиков. Это отличный редактор кода, который поддерживает такие функции, как создание кода, отладка, профилирование, интеграция с git, модульное тестирование и многое другое. Visual Studio теперь предлагает полнофункциональную бесплатную версию Community.

Также можно написать код для .NET Core в качестве основных текстовых файлов с вашим любимым текстовым редактором. Вы также можете использовать Visual Studio Code на любой ОС в качестве отличного базового редактора кода. Для тех из вас, кто никогда не откажется от своего vim или emacs, вы даже можете заниматься разработкой C#. Вы также можете установить подключаемый модуль для Visual Studio, чтобы добавить все ваши любимые сочетания клавиш.

Вся экосистема .NET также полна замечательных инструментов для разработчиков. Существуют десятки удивительных инструментов, которые существуют, включая смесь продуктов с открытым исходным кодом и коммерческих продуктов.

Стандартизация навыков

NET поставляется с очень хорошим набором библиотек базового класса. В отличие от node.js встроены простые строковые функции, такие как LeftPad(). Широкий массив базовых классов значительно уменьшает необходимость в внешних пакетах. Microsoft также опирается на некоторые проекты сообщества, такие как JSON.NET, как ключевые библиотеки, широко используемые в большинстве проектов.

Microsoft предоставляет очень хороший набор шаблонов и методов для .NET. Например, существуют встроенные среды стандартного доступа к данным (структура сущности) и структуры контроллера модели (MVC). Большинство разработчиков используют эти стандартные фреймворки. Это позволяет разработчику легко перемещаться между командами и быстро понимать, как все работает. Из-за этого ваши знания и навыки становятся более переносимыми.

NET Core с открытым исходным кодом

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

Как разработчик время от времени вам нужно посмотреть под ковром, чтобы увидеть, что делает код. Если вы каким-либо образом можете получить доступ к исходному коду, вы можете быстро проверить и получить ответы на многие типы вопросов.

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