Highload fwdays — спікери зі Stackoverflow, Netflix, Google, AWS, Rovio | Київ, 5 жовтня
×Закрыть

На чем разрабатывают desktop-приложения и нужно ли оно?

Привет, коллеги.

Начну с того, что мне нужны советы, а не разведение войн что лучше.

Я хотел бы знать:
1. Какую технологию выбирают продуктовые компании для написания десктоп софта (кроссплатформенного).
2. Умер ли всем хорошо знакомый Делфи?
3. Стоит ли вообще смотреть в сторону desktop, когда есть возможность разработать веб-решение? Интересует вопрос, на сколько сложно аудитории перейти от использования «программ» к использованию веб-приложения.

LinkedIn
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Допустимые теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Начнем с того, на чем вы хотите писать это приложение?

Если С++, то Qt или WxWidgets
Если C, то GTK3+
Если D или что-то другое, то не подскажу.

Если Java или Python, то еще раз хорошо подумайте

Интересует вопрос, на сколько сложно аудитории перейти от использования «программ» к использованию веб-приложения.

Сначала кое-кому сложно, но потом, при необходимости, desktop не заставишь использовать. Так что, не сомневайтесь.

Десктоп приложение стоит делать при следующих условиях:
1. Если приложение будет требовательно к ресурсам.
2. Если приложение должно работать даже без доступа к глобальной сети.
3. Если требуется быстрый отзывчивый интерфейс

4. Если есть ограничения по безопасности использования

Какую технологию выбирают продуктовые компании для написания десктоп софта

С/С++ в качестве языков/компиляторов

Qt/OpenGL — в качестве отрисовки UI

Умер ли всем хорошо знакомый Делфи?

Еще всякие C# переживет (шутка)

Множество мелких продуктовых компаний используют Delphi

когда есть возможность разработать веб-решение

Если есть возможность и нет вышеперечисленных ограничений- однозначно на ориентироваться надо на Web.

Как насчет wxWidgets? Популярны ли они еще? Их плюс в том, что UI нативен на каждой платформе.

А они были когда-то популярны? Была бы на них документация... Ну и минус их в том, что код не скомпилится без изменений на любой платформе. Хотя если вынести все платформозависимые штуки в отдельный класс.

" Ну и минус их в том, что код не скомпилится без изменений на любой платформе"
Если речь идет о нём как чисто о UI фреймворке, то чего он не скомпилится?
Да, и платформозависимые штуки всеравно нужно выносить отдельно. В любом же случае framework не представит 100% абстракции над платформой. Хотя это конечно же зависит от конкретного проекта.

Сейчас популярен комплексный подход к запуску сервисов — ПО iOs, Android, Windows + Web — сервис. Все эти клиенты работают с единым сервером и единой БД. Т.е. человек может с любого девайса получить доступ к сервису.
Про Делфи — существуют еще проеты на нем. Но их стараются переписать на C#.

Делфи доживает свои последние дни)

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

Например почтовый клиент для гуглопочты — это хорошо. Есть доля людей, которые ими пользуются. У меня вопрос — а есть ли ещё такие приложения, которым очень не помешало бы десктопной автоматизации. И даже не в десктопе вопрос, скорее чтобы персональный компьютер/пад выполнял за юзера частые действия, на которые тот тратит много времени. При этом «много» может быть и 2 минуты в день.

И насколько реально такие программы продавать — как они продаются, кому, где? Возможно ли B2B?

ЗЫ. Даёшь мозговой штурм!

когда я в 2008 пробовал подобное — шло более менее неплохо (600к скачек вроде), хотя это был опенсоурс

проблема в том что если «сервисы» не твои — возникает масса вопросов легальности и поддержки

Принято... Действительно, это главный корень зла. Владельцы сервисов имеют как правило очень острое чувство сосбтвенности и ревности. Притом не только с мировым именем, те как раз лояльны вплоть до API. А вот как раз по сервисам которые имеют хорошую идею в корне, но им не судьба высоко выплыть самостоятельно — именно их владельцы будут противодействовать.

Но я встречал и положительные примеры. К сожалению, это как раз исключения из правил. Но нам ли бояться делать логику в эксепшене?

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

+1, только вчера где-то в IT новостях читал, что новый тренд для «облачных» SaaS приложений — это «облако» + поддержка оффлайн-режима на клиентских устройствах.

Гуглопочта, правда, не самый лучший пример — т.к. с ней можно работать из любого стандартного почтовика (я лично в во времена dial-up качал почту Аутлуком). А вот всякие бизнес-приложения для мобильных работников — вот там это очень востребовано.

Нажмите кнопочку Пуск (ну или что) и посмотрите, какие приложения у вас стоят и на чем они.
Это заодно ответит на вопрос, умер ли десктоп — вроде не умирает пока. Я вижу как минимум офис, скайпы всякие, IDE и иже с ними — все это добро имеет веб-аналоги, но они унылы.
Согласен, что сейчас десктоп толково на QT писать.

Мертв ли Делфи? — если уж MFC мертв, то делфи мертвее мертвого.

Я пишу на Java+Swing и последние лет 5 это основной мое занятие.

И что, действительно есть столько проектов на Свинге, что можно прокормиться только с этого?

Пожалейте пользователя

Стоит ли вообще смотреть в сторону desktop, когда есть возможность разработать веб-решение?

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

1. Qt
2. лучше не начинать на нем

3. если функционала веба/браузера достаточно — то лучше в вебе. В зависимости от круга пользователей — можно даже отказаться от ИЕ. Хром, ФФ — довольно большое покрытие аудитории будет.

Я вот планирую апликуху на Python + QT писать :)

Пожалейте пользователей со слабыми машинами, используйте C++

Пожалейте пользователей со слабыми машинами, используйте ассемблер

Пожалейте пользователей

Компилятор C++ обычно генерирует более быстрый ассемблер код, чем тот, который может написать человек

Да и не только слабыми, пользуюсь простеньким написанным на Питоне таск-менеджером TaskCoach и как же он тормозит! :-E

Напишу насчет Java. Десктоп не часто, но пишут. На:
1)Swing- обычно это суровый legacy-саппорт-багофикс.
2)SWT+ Eclipse RCP — обычно это клиенты-немцы :) .

Немного работал и с тем, и с другим, и если бы меня заставили пересеть с веба на что-нибудь из этого, я бы сильно расстроился.

и никто JavaFX не посоветовал -) Перешли б, если позвали?

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

Ну так-то можно еще и Adobe Air рассмотреть :)

если есть возможность запихнуть в веб, то лучше в веб , если нету — то qt или wxWidgets

1) В сфере C# - WinForms, GTK#. С++ - QT.
2) Де юре — нет, де факто — да.

3) Сейчас ещё стоит, но тенденции таковы, что всё стремится к вебу.

а как же wpf?

Человек хочет кросплатформенность.

ну тупее, чем кросплатформенный софт под десктоп разве что поддержка оперы в каком-то сайте ориентированном только на США

эт как вы легко опустили всякие файрфоксы с хромами

ну это скорее исключение из правил.

Вы как то лихо опустили задумку Джавы.

на джаве как-то не мало кто пишет десктопные приложения

Ну вы ведь говорили про десктопный софт в целом, а не про десктопный софт не на Джаве.

Тогда JavaFX ИМХО не самый худший вариант, начать будет попроще, чем с C++/QT

Не спорю. Я просто перечислил варианты.

Подписаться на комментарии