Актуальна ли на данный момент Desktop разработка на C# WPF?

Месяца два назад начал изучать технологию WPF, впринципе все устраивает, интересно познавать технологию создания приложений. Но дня два назад зашёл на hh.ru дабы посмотреть вакансии...и их на WPF оказалось очень очень мало. В основном везде вакансии по web разработке. Вот я и задался вопросом, а стоит ли мне продолжать учить WPF, актуально ли это? Или стоит бросит и начать погружаться в мир web-технологий? К слову, сейчас учусь на 2 курсе, читаю Рихтера, учу WPF и хотел бы в следующем году устроиться хотя б на стажировку.
  • Вопрос задан
  • 1118 просмотров
Решения вопроса 1
Моё мнение - десктоп-разработка по-прежнему актуальна, но стала более нишевой.
Кажется, что её совсем мало - но это не потому, что прям десктоп вообще никто не пишет, а потому что веба пишут намного-намного больше.

Почему веба сейчас так много?
Потому что веб дал возможность доставлять на клиента исполняемую логику очень быстро. Не нужно ничего ставить, просто заходишь на сайт. При этом, обеспечивается ПРИЕМЛЕМЫЙ уровень user experience. Это всё ещё и кроссплатформенно.
Вот на мобилках веб во многих случаях не даёт столь же хороший UX, поэтому там пышным цветом цветёт разработка "нативных" приложений. Забавно, не так ли? Ну и на мобилках изначально были созданы каналы быстрой доставки приложений - Магазины. Очень важно, что это было сделано изначально, и к этому все сразу привыкли.

Так что там с десктопом?
Я считаю, он остался для того софта, который обычно относят к категории проф. инструментов (тут согласен с Dmitry Roo ). Тяжелые редакторы вроде After Effects, CAD-системы, ну и тулы для разработчиков. Если так подумать, десктопный софт и раньше был в основном для специалистов и профессионалов, как и вообще стационарный компьютер. Просто раньше те, кто сейчас читает новости на смартфоне, читали их в бумажной газете, а пиццу заказывали по телефону.

Иными словами, это не десктопа стало прям в 10 раз меньше, это просто НЕпрофессиональных пользователей стало в десятки раз больше, как и кейсов непрофессионального использования техники - для заказа пиццы, для общения в мессенджере и т.д. И это всё закрывается в том числе мобильной и веб-разработкой. (с другой стороны, почему Телеграм такой ох*енный? Ну например потому, что его десктоп написан НЕ на вебе. И он просто отлично работает, а не тормозит по 20 секунд при запуске как Скайп)

А что с WPF?
Конечно именно эта технология потеряла в популярности. Основная причина очевидна - отсутствие кросс-платформенности. Да, Винда все ещё имеет сильные позиции на десктопе, но всё-таки уже перестала быть нерушимой. Одних макодрочеровюзеров вон сколько. Линукс уже не такой страшный (хотя конечно это все ещё 1-2% от всего десктопа). Да и вообще, когда на вебе платформа по сути одна - это Хром (я обожаю Firefox, но такими темпами через лет 10 он точно сдохнет, как это не прискорбно), то видя это десктоп-разработчики жутко бомбят (я в том числе) и требуют себе такого же удовольствия. Поэтому вместо WPF нынче интересны Avalonia и Platform UNO (это если на дотнете).

С точки зрения Винды есть WinUI, но это опять таки платформозависимая есть. Она для тех, кому интересна только Винда, или у кого есть бабки поддерживать нативно все нужные платформы.
Ну и соглашусь с ответом Василий Банников , он хорошо описал границы десктопа на сегодняшний день.

А вообще, я жду когда WebAssembly наберёт ещё больше силы, и границы между вебом и десктопом просто сотрутся. Нет ничего такого в HTML и тем более JS, чтобы на них всё на свете переписывать. Это делается только по одной причине - см. выше про скорость доставки логики на машину клиента. И текущая популярность веба как платформы для приложений (именно платформы, а не информационной сети) - это по причине того, что Гугол всех победил производительностью браузера, и все подсели на Хром как на платформу - дешёво, доставляется ОЧЕНЬ быстро, работает ДОСТАТОЧНО быстро, покрыты сразу все устройства.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
vabka
@vabka
Токсичный шарпист
Dmitry Roo вас немного пугает.
1. Десктоп всё ещё присутствует во всяком корпоративном сегменте - при разработке приложений конкретно для этого бизнеса.
2. Десктоп всё ещё существует там, где нет надёжного сообщения с сервером. (например как-то имел "удовольствие" увидеть/поразрабатывать софт для судовых механиков, где бы отслеживались разные процедуры/инспекции/отчёты над корабельным оборудованием, а при появлении стабильного соединения - эти отчёты бы отправлялись на сушу.
3. Десктоп всё ещё существует там, где тебе обращаться к серверу и не нужно. (пример - уже упомянутые профессиональные инструменты для разработчиков, типа dotMemory или dotTrace)

А если говорить конкретно про WPF - мне кажется, что сейчас понемногу с него уходят либо на другие языки (Flutter тот же) либо переходят на кроссплатформенную Avalonia.
Ответ написан
xez
@xez
TL Junior Roo
Сейчас скорее, desktop разработка потеряла актуальность, вне зависимости от технологии.
Вспомните сами сколько приложений вы приобрели за последний год и сколько сайтов вы посетили (за посещение сайтов вы тоже платите, но не деньгами).
Думаю перевес будет все таки в пользу вэба.

И приложения десктопные, кмк смещаются в профессиональную область. Продаются всякие ide, cad, офисные пакеты и т.д… Рядовому пользователю это все не интересно.

Есть ещё геймдев - но это уже отдельная отрасль.
Ответ написан
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Десктоп живее всех живых, а вот WPF мертв.
WinForm рулит.

Это сугубо по заказам.
Дальше ИМХО
Геморой с электронами или сайтами все уже раскушали. Банально хотят приложуху простую как топор.
Энтерпрайз пользователи те на своей волне, но там доже бывает что нужен именно десктоп и такой ломовой что глазки кровью наливаются.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы