Сложно ли найти desktop Java и C++ проекты на Upwork?

0 +1 -1
stas спросил 3 года назад

Я уже 3 года делаю сайты на Ruby On Rails. До этого долгое время писал на PHP. Веб надоел, хочу заняться разработкой десктоп-приложений под Windows, а это удобнее всего делать на джаве и плюсах.

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

Стоит ли пытаться найти десктопные проекты, не имея опыта в этой сфере? Или на одеске ничего нельзя найти кроме веба? Я готов потратить год на изучение десктопной разработки (в свободное от основной деятельности время). Хотелось бы знать, насколько реально писать под винду на одеске и на сколько это выгодно? Да, есть мобильная разработка, но ей тоже будет скучно заниматься. Хочется писать действительно полезный софт, а не очередной хипстерский инстаграм.

Заранее спасибо

0 ответ
0 +1 -1
Yevhenii Zapletin Админ. ответил 3 года назад

Я немного с вами не согласен:
 
— C++ в десктоп уже очень мало используется, он как раз набирает популярность на мобилочках изза быстродействия, а на декстопе на плюсах сейчас всякие низкоуровневые фичи только пишут
— самый удобный язык для десктоп приложений на винде это c#. .NET даетсамый лучший функционал. Но органичени шарпа это кроссплатформенность, моно не всегда спасает
— джава очень популярен в энтерпрайз и когда нужна кросссплатформенность, а сейчас она нужна практически всем
— писать десктоп приложение на одеске вполне реально, я сам выполнил несколько проектов. Десктопа и энтерпрайза действительно меньше проектов, но они в среднем имееют очень большую стоимость и сроки по сравнению с мобилочками и вебом
— на счет интересности я с вами не согласен, в мобилочках можно пилить например стриминговый сервис который не легче десктоп банковского по а в вебе много е тривиальных задач по производительности и высоко нагруженным системам. Все зависит от того чего вы сами хотите

stas ответил 3 года назад

Спасибо за ответ! Я был рад узнать, что на upwork-е реально найти desktop-проекты.<br><br>↓↓ Оффтопик и пространственные рассуждения про айти ↓↓<br><br>По поводу языков. Я считаю, что Java и C# популярны в единичной (штучной) разработке, а C++ и Objective C — это самый подходящий язык для массовых широко распространяемых программ. Если делать массовый продукт, то мало кто из пользователей захочет ставить джаву или еще один .Net Framework версии 4.666.13. Бывает даже, что .Net Framework в системе уже стоит, а программа требуют бовую новую версию дотнета. Поэтому мне кажется, что утилиты лучше писать на C++ и Objective С. А в энтерпрайзе Java и C# безусловно лидируют.<br><br>Касательно C#. У этого языка слишком много минусов.<br><br>Плюсы C#:<br>+ Можно делать UI который выглядит как нативный. В джаве, как правило, используется Swing. Swing самостоятельно отрисовывает контролы, и контролы выглядят гораздо хуже, чем нативные. А в C# есть кошерный Windows Forms.<br>+ Язык гораздо более приятный, чем Java. Неймспейсы не прибиты гвоздями к папкам на диске, есть partial classes, есть много других плюшек.<br><br>Минусы C#:<br>- Как вы правильно заметили, у C# нет полноценной кросплатформенности. В энтерпрайзе часто делают рабочее место оператора на винде, а сервер на линуксе. Если писать на C#, то и на рабочих местах, и на сервере придестя держать Windows. Практика показала, что виндовые сервера сложнее админить, чем линуксовые<br>- Для дотнета не сделали Scala и Clojure. Эти новые технологии вызывают интерес, но они реализованы только для JVM. Если пишешь проект на джаве, часть проекта можно написать на джаве, а маленький кусочек в качестве эксперимента моно сделать на Clojure, и Java-код будет нормально взаимодействовать с Clojure-кодом.<br>- Популярные библиотеки и утилиты для разработки как правило сначала появляются в мире джавы, а потом портируюся в C#. .NET-разработчики мало что полезного изобретают.<br><br>Я пришел к выводу, что программирование на C# — это не очень интересное занятие, ввиду того что этот мирок зашоренный и ограниченный. Да, C# более приятный и удобный язык, чем Java, но у самого дотнета слишком много ограничений.<br><br>> на счет интересности я с вами не согласен, в мобилочках можно пилить например стриминговый сервис который не легче десктоп банковского по а в вебе много е тривиальных задач по производительности и высоко нагруженным системам. Все зависит от того чего вы сами хотите<br><br>Да, безусловно полезные проекты есть и в вебе, и в мобильной разработке. Только мне кажется, что в десктопной разработке гораздо больше полезных проектов. В вебе и мобилках часто просят сделать бесмыслленые развлекательные приложения. Хотя попадается и что-то полезное.<br><br>Еще один недостаток веба и мобилок. Если ты что-то сделал, то твой проект будет использоваться 2-3 года, а потом наймут новую комманду разработчиков, и перепишут проект с нуля. Когда знакомые просят веб-программиста показать пример того, что он сделал, программист попадает в неловкую ситуацию, потому что показывать особо-то и нечего. Сайт живет пару лет, а потом переписывается с нуля. В мобильной разработке тоже очень много гиперактивного переписывания проектов с нуля. В десктопной разработке ситуация другая: есть много программ, написанных в начале двухтысячных, или даже в девяностые, и эти программы используются до сих пор.

maxsx ответил 3 года назад

Интересно, а какие есть популярные приложения на java для десктопа? Допускаю что пару можно найти, но это скорее исключение, разве нет?

admin Админ. ответил 3 года назад

Java Desktop популярно среди профессиональных инструментов. Простой пример IDE для программистов: Eclipse, Intellij IDEA. Очень много программ для науки построены на основе Eclipse RCP, например я несколько лет разрабатывал приложения для анализа и визуализации метеорологических данных.. Различные решения кастомных решений для управления компанией и производством, но это уже скорее Java EE. Desktop Java программы популярные в своих сферах, а вот программ для широкого потребителя действительно немного.