От простой формы регистрации до алгоритма машинного обучения, от тетриса до VR-игр на движке Unity — все эти программы можно написать на языке C#. Вместе с backend-разработчиком Logrus IT Федором Мальцевым разбираемся, что из себя представляет C# и какие возможности он открывает программисту.
C# — что это за язык
C# (произносится си шарп) — это объектно-ориентированный язык программирования, разработанный компанией Microsoft, чтобы создавать приложения для Windows. Сегодня C# стал кроссплатформенным, на нем можно писать программы как для Windows, так и для iOS и Linux, особенно веб-приложения и для геймдева.
Язык используется в backend-разработке веб-приложений: в работе с базами данных и сетью, в программировании логики и так далее. Программисты C# востребованы в банках, небольших компаниях и стартапах, мобильной разработке. C# пригодится тем, кто планирует создавать видеоигры и VR-приложения на популярном движке Unity или работать с алгоритмами машинного обучения.
Чем хорош язык C#
C# — объектно-ориентированный язык, он сделан так, чтобы работать с кодом было проще. Код делится на фрагменты (объекты), каждый из которых можно редактировать и улучшать, не переписывая при этом весь остальной код.
Кроме того, в C# есть много функционала, который уже реализован — просто берите его и используйте. Например, если вам нужен алгоритм сортировки, можно не писать его с нуля, он уже есть. Достаточно написать команду “.sort” — и все отсортировано.
У C# синтаксис проще, чем, например, у Python. В нем есть фигурные скобки, которые размечают блоки кода. В результате воспринимать такой код легче. C# — неплохой язык для начинающих, изучить его будет проще, чем тот же C++. Если же вы раньше имели дело с C-подобными языками, то будет еще легче, синтаксис окажется для вас очень знакомым.
Сейчас язык C# стал опенсорсным: каждый может внести в него свой вклад, но Microsoft при этом сохраняет контроль, поддерживает философию продукта, выбирает лучшие предложения. Обновление языка происходит раз в год.
Востребован ли C#
Весной 2023 года на hh.ru размещены более 1300 вакансий C#-разработчиков по всей России. Организация контроля качества кода TIOBE в марте 2023-го включила C# в топ-5 самых популярных языков программирования и отметила его бурный рост.
Востребованность языка подтверждают и зарплаты специалистов по C#. За второе полугодие 2022-го, по данным Habr, средняя оплата труда разработчика на C# выросла на 4% и составляет 161 000 рублей.
Инструменты для работы с C#
Чтобы работать с C#, вам понадобятся следующие инструменты.
Visual Studio — среда разработки, созданная специально для C#. На этой площадке можно писать код и разворачивать приложения. Встроенный функционал проверяет код и подсказывает, если вы совершили ошибку, выдает справочную информацию, если вы что-то забыли.
ASP.NET — фреймворк для веб-разработки на C#, который позволяет быстро и просто связывать серверную часть приложения с клиентской.
WPF (Windows Presentation Foundation) — софт для программирования графических интерфейсов для разных экранов.
LINQ (Language Integrated Query) — встроенный в C# язык запросов, напоминающий SQL. Помогает работать с данными из разных источников, сортировать и группировать их.
Entity Framework — фреймворк, который позволяет работать с данными как с объектами и использовать для запросов язык LINQ.
С чего начать изучение C#
Руководство по C# и Visual Studio от Microsoft — упорядоченная официальная документация от компании-разработчика с примерами кода, инструкцией, как создать первое приложение на C#, и учебниками.
Поток C# на Хабре — новости и кейсы от разработчиков.
Поток C# на сайте Metanit — очень понятное объяснение практически всех основных тем с примерами кода
DotNetRu — YouTube-канал на русском с подкастами и докладами с конференций.
Книга Эндрю Стиллмена «Head first C#» — хорошая книга для начинающих, которая не задавит сложной информацией и даст все необходимое. Дополнить можно справочником по C# Бена и Джозефа Албахари.
Книга Джеффри Рихтера «CLR via C#. Программирование на платформе Microsoft .NET Framework 4.5 на языке C#» — библия C#, в которой описаны все тонкие моменты языка. Будьте осторожны, с нее лучше не начинать, иначе можно испугаться и бросить.