Publications / «Что учить, Java или C#?» Востребованность и перспективы популярных языков
Чтобы ответить на популярные вопросы начинающих программистов о том, стоит ли учить такой-то язык и связывать с ним карьеру, мы задали разработчикам на Java, JavaScript, PHP, C#, C++, Python и Swift/Objective-C три вопроса:
- Посоветовали ли бы вы новичкам начать изучение программирования с вашего языка?
- Насколько сейчас востребован этот язык? Легко ли найти работу?
- Какие он имеет перспективы? Будут ли расти количество вакансий и зарплаты?
[Андрей Губский — CTO в Торф ТВ, автор статей на DOU]
1) Безусловно, я бы посоветовал новичкам изучать C#. На мой взгляд, это идеально сбалансированный ООП язык, который позволяет достаточно легко начать с ним работать, используя простые и лаконичные конструкции в начале, и в будущем постепенно перейти к таким мощным инструментам, как Linq и лямбда-выражения.
Человек, который начинает изучение программирования с этого языка, изначально получит правильные навыки при написании кода.
В этом плане у C# есть ряд преимуществ:
- Это строго типизированный язык, что означает, что программисту, который начинает свое обучение на этом языке, гораздо проще понять, что такое тип данных и какие типы данных бывают. Это выгодно отличает его от Python и JavaScript.
- Это .NET-язык, что означает, что программист будет работать в рамках управляемой среды CLR, и ему не придется работать с выделением памяти и освобождением памяти. Он сможет сосредоточиться непосредственно над решением алгоритмических и бизнес-задач, не отвлекаясь на поиск причин утечек памяти и внезапных исключений.
- Это С-подобный язык (что очевидно уже из его названия). Его синтаксис гораздо изящнее и лаконичнее Pascal, который долгое время был основным языком, использующимся для обучения программированию. При этом человек, знакомый с одним С-подобным языком, с легкостью сможет понимать и читать код других языков этого семейства.
2) Сегодня C# безусловно востребован. Вакансий очень много, причем как на крупные энтерпрайз-проекты с консервативным стеком, так и в компании, стартующие новые проекты, где используются самые передовые наработки и инструменты.
При этом очень важно понимать, что сферы применения этого языка очень широки:
- разработка REST API и веб-сервисов — ASP.NET MVC, ASP.NET Web API;
- разработка игр — Unity;
- разработка мобильных приложений — Xamarin;
- разработка десктопных приложений — WPF, Windows Forms;
- разработка кроссплатформенных приложений и сервисов — .NET Core, Mono;
- разработка облачных сервисов — под C# имеются SDK от всех крупных облачных платформ;
- разработка хранимых процедур для SQL Server.
Поэтому в рамках одного языка можно совмещать специализацию по нескольким направлениям и при этом использовать знакомые инструменты и библиотеки.
Грамотный специалист может найти работу где-то за неделю-две.
3) С учётом того, что Microsoft активно развивает платформу .NET Core, я думаю, что в ближайшее время увеличится количество вакансий именно в этом направлении. Рынок же по классической версии .NET уже сформирован, и каких-то глобальных изменений на нем, скорее всего, в ближайшее время происходить не будет. Большого роста или падения зарплат ожидать не стоит. Но не следует забывать также и то, что С# входит в десятку самых «высокооплачиваемых» языков программирования. В целом же можно с уверенность сказать, что этот язык успешно завоевал себе крепкие позиции на годы вперед и перспективы у него исключительно позитивные.
Read publication