LINUX.ORG.RU

Что выбрать для разработки десктопного софта?

 , , нативные яп


0

3

Захотелось мне, для души так сказать, сделать пару - тройку полезных, в первую очередь для себя, утилит. Конечно может они окажутся полезными и для других, я не жаден. Я вижу такие пути: 1 - C++/Qt, 2 - C#/.NET|Mono, 3 - FreePascal/Qt|GTK. Что бы выбрали вы? Не хочется связываться с скриптовыми языками типа Python, Ruby, Perl, etc. Хоть и можно, но не хочется.

Ответ на: комментарий от Reset

Я считаю, что тех кто считает gtk-шные диалоги нормальными и тем более «лучше мастдайных» надо сдавать в дурку.

А я считаю, что пиарящих шизуал-студию упоротых виндарасов, считающих стопицотметровый быдлокодерский рантайм нормальным делом «в эпоху терабайтных винтов», надо отправлять на урановые рудники.

border-radius
()
Ответ на: комментарий от border-radius

А я считаю, что пиарящих шизуал-студию упоротых виндарасов, считающих стопицотметровый быдлокодерский рантайм нормальным делом «в эпоху терабайтных винтов», надо отправлять на урановые рудники.

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

ЗЫ: Асколько GTK рантайм в винде весит?

AF ★★★
()
Ответ на: комментарий от border-radius

шизуал

Религия не позволяет написать название продукта без ошибок? И после этого кто-то смеет говорить об упоротости?

Reset ★★★★★
()
Ответ на: комментарий от Reset

Я считаю, что тех кто считает gtk-шные диалоги нормальными и тем более «лучше мастдайных» надо сдавать в дурку.
Например, какую тему надо установить, чтобы не видеть gtk-шных файловых диалогов?

И в чем же принципеальное различие этих диалогов, и уж тем более чем они (гтк-шные) так ущербнее виндовых? По моему у вас дичайший баттхерт.

makeB
()
Ответ на: комментарий от makeB

И в чем же принципеальное различие

gtk'шный гораздо гораздо менее функционален, занимает очень много экранного пространства и всё без толку

после нормального виндового диалога gtk'шным пользоваться невозможно

Reset ★★★★★
()
Ответ на: комментарий от border-radius

Вот именно, это не программа, это продукт

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

И не для программистов, а для потребителей.

Как только красноглазики не пытаются оправдать свою ущербность.

Reset ★★★★★
()
Ответ на: комментарий от Kindly_Cat

Справа - уродливое нефункциональное говно.

Оке, какими функциями вы в этом окне пользуетесь, которых вам так не хватает в гткашном? Возможность пресеты побольше что-ли сделать, упорядочить - что? Вот хоть убейте, я ити окна вообще не замечаю, какие они там, так как использовал лишь для «выделить нужный и нажать кнопку открытия», и это все, остальные функции которые в них есть не когда не использовал, за исключением дерева конечно.

makeB
()
Ответ на: комментарий от border-radius

Чего там на 40 мег было выбрано? Там _все_ dll'ки занимают 40 метров, причем я не видел еще ни одного приложения, которое бы использовало их _все_.

Reset ★★★★★
()
Ответ на: комментарий от border-radius

И да, 40 мег Qt тоже по зависимостям были выбраны, совсем все - порядка 150.

У меня 26М и еще есть чего выкидывать.

AF ★★★
()
Ответ на: комментарий от makeB

В виндовом встроен полноценный проводник со всеми функциям проводника, чем я пользуюсь постоянно. В gtk'шном диалоге даже нормально директорию сменить нельзя — надо тыкать мышкой по кнопкам либо применять ctrl-l костыль, который еще раздует диалог.

Reset ★★★★★
()
Ответ на: комментарий от Reset

Опять мимо. Программой пользуются, а продукт хавают. Потребители. Воспитанные на get-the-fuckts и прочем рекламном суррогате. С уродливым вкусом (кнопочки и диалоги - только такие, как дядя Билли сказал, ведь они лишены свободы выбора, и не понимают, что если есть возможность дорабатывать интерфейс под себя - это не значит, что его необходимо дорабатывать) и сильно развитым стадным инстинктом, но слишком большим ЧСВ: «мы ведь не нищеброды, недавно новое топовое железо купили, чтоб опять загрузить его на 100% и через год побежать за новым ради мегафич в новом релизе Майкрософт ® Уиндоус ™, мы ведь не хотим ничего решать и так рады, когда нам навязывают чувство прекрасного» . От веб-интерфейсов (нормальных) таким потребителям вообще сносит голову, ибо вместо дефолтных унылых кнопочек они видят нечто не укладывающееся в рамки их узкого восприятия, поэтому что-либо продвинутое для них сразу становится неюзабельным говном. Потребители, что с них взять. Хотя некоторые из них почему-то именуют себя программистами.

border-radius
()
Ответ на: комментарий от border-radius

Программой пользуются, а продукт хавают. Потребители. Воспитанные на get-the-fuckts и прочем рекламном суррогате.

Красноглазое зомбирование прет из всех щелей.

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

Reset ★★★★★
()
Ответ на: комментарий от border-radius

От веб-интерфейсов (нормальных) ... о не укладывающееся в рамки их узкого восприятия,

Прикрываясь такими высокими фразами всякое мудачье «творит» сайты с горизонтальной прокруткой, фреймами и кнопками на полэкрана. На кол сажать !

Reset ★★★★★
()
Ответ на: комментарий от border-radius

WebView там есть?

10180096 QtGui4.dll
 6197200 libstdc++-6.dll
 2812928 QtCore4.dll
 1433055 libtiff-5.dll
 1214466 libjpeg-8.dll
 1013760 QtOpenGL4.dll
  740209 libpng15-15.dll
  385024 QtXml4.dll
  346112 QtSvg4.dll
   95758 zlib1.dll

Итого ~24.5м + мелочевка в плагинах

AF ★★★
()
Ответ на: комментарий от Reset

Не видел ты нормальных веб-интерфейсов, значит. Хотя, какой интерфейс с IE будет нормальным...

PS. а вообще да, любителей горизонтальной прокрутки - на кол.

border-radius
()
Ответ на: комментарий от Reset

Так вот, qt — полноценный продукт,

используя который обычно получается тормозящее и жрущее ресурсы говно.

а gtk — программа для любителей дрочить в присядку.

а с gtk обычно все гораздо лучше.

Deleted
()
Ответ на: комментарий от border-radius

PS. а вообще да, любителей горизонтальной прокрутки - на кол.

И любителей флеш-меню туда же пожалуйста, раз уж начали инквизицию :]

makeB
()
Ответ на: комментарий от border-radius

Если теперь добавить QtWebkit4.dll со всеми зависимостями - как раз около 40 мег получится.

Нафига козе баян в программе браузер? Ты бы еще файерфокс в программу на GTK заснунул

AF ★★★
()
Ответ на: комментарий от AF

В программе браузер, в браузере - ещё одна программа. Выше по треду уже писал, для чего надо было это делать в конкретном случае и что это вообще может дать.

border-radius
()
Ответ на: комментарий от Burbaka

Из перечисленного только F# на что-то годен.

anonymous
()
Ответ на: комментарий от Reset

на примере третьего гнома это очень хорошо видно

гном это скорее исключение из правила. в qt таких исключений практически нет.

Deleted
()
Ответ на: комментарий от border-radius

Выше по треду уже писал, для чего надо было это делать в конкретном случае и что это вообще может дать.

Да, чего только не сделаешь на работе за бабло )

AF ★★★
()
Ответ на: комментарий от anonymous

Зачем вообще этот ваш C#?

Ты не поверишь...

И да, вроде как нативного же вроде языка спрашивают.

Перечитай вопрос. Обрати особое внимание на пункт 2.

Miguel ★★★★★
()
Ответ на: комментарий от Miguel

Не, ну если брать что-то для mono/.NET или jvm/dalvik, то, ИМХО, стоит смотреть на что-нибудь приличное вроде scala, f#, clojure на худой конец. Зачем это многословное шаблонное говно в виде шарпа и явы?

anonymous
()
Ответ на: комментарий от anonymous

ИМХО, стоит смотреть на что-нибудь приличное вроде scala, f#, clojure на худой конец.

А, ну, это несомненно.

Miguel ★★★★★
()
Ответ на: комментарий от vurdalak

C++/Qt, PyQt. Первый — потому что по сравнению с C/GTK субъективно лучше, второй — быстрее будет писаться и меньше шанс создать утечки и сегфолты.

От утечек в C++ спасает отказ от работы с raw указателями: для хранения умные указатели, функции возращают ссылку или shared_ptr, а если уж параметром передаётся умный/raw указатель и он может быть null - это нужно чётко указать в doxygen. Всё.

Вот если бы человек писал не для себя, а для заказчика, я бы отсоветовал плюсы из-за сегфолтов: в ограниченных сроках есть большой соблазн нарушить простые правила и получить граблями в лоб. Но ТС фрилансер, занятый в вебе, онтопик ему для души.

quiet_readonly ★★★★
()
Последнее исправление: quiet_readonly (всего исправлений: 1)

1) С++\Qt - хорошая вещь, если хочешь что-то серьезное накатать, где важна производительность (обеспечивается плюсами и прямыми руками), сама по себе Qt - очень вкусная вещь, из минусов - громоздкий С++, громоздкий процесс разработки на плюсах
2) C# - вкусная вещь сама по себе, но в Mono реализовано меньше библиотек, чем в родном .NET и отсутствует вкусный WinForms модуль (он конечно есть, но работает через Wine, что есть полный отстой), а также нет гуевой библиотеки (есть как бы православный костыль - привязка к GTK, но GTK - УГ). Так что я бы сказал, на лине C# лучше подойдет для консольных утилит, серверов и демонов, но с гуем пичаль.
3) Pascal - не нужно трогать покойников
4) Java - почти также быстро и просто как С# ([sarcasm]с чего бы?[/sarcasm]), библиотека также развита как и Qt

Так что если не хочешь связываться со скриптами, либо C++\Qt, либо Java

EugeneBas ★★
()
Ответ на: комментарий от quiet_readonly

Фрилансерам особо противопоказаны C-подобные языки. Потому что нет под рукой старшего кодера, который будет давать по рукам за быдлокодерство.

vurdalak ★★★★★
()
Ответ на: комментарий от xterro

P.S. Почему никто не советует wxWidgets?

Потому что линуксоиды кроме анального рабства Qt ничего не знают :]

makeB
()

2-е. Единственное, с чем могут возникнуть проблемы - гуй. Есть 2 рабочие кроссплатформенные gui-либы: GTK# и WinForms; Первая убога и требует установки отдельных либ на оффтопике,

вторая гораздо мощнее, идет в стандартной поставке любого из рантаймов, но в моно реализована жутко неполно, да и выглядит ненативно. Алсо, в моно оно ещё и выдает странные тормоза иногда(например, заполнение DataGridView > 100 с отключенным VirtualMode)

Deleted
()
Ответ на: комментарий от Reset

В gtk'шном диалоге даже нормально директорию сменить нельзя — надо тыкать мышкой по кнопкам либо применять ctrl-l костыль, который еще раздует диалог.

да ну? если ты не осилил прочитать доки про то, как задать свои кнопкосочетания, если не устраивают дефолтные - это вовсе не означает, что в gtk-шных диалогах обязательно тыкать куда-то мышкой

ananas ★★★★★
()
Ответ на: комментарий от ananas

да ну? если ты не осилил прочитать доки про то, как задать свои кнопкосочетания, если не устраивают дефолтные - это вовсе не означает, что в gtk-шных диалогах обязательно тыкать куда-то мышкой

Дело совсем не в сочетаниях, а в том, что в нормальных диалогах это делается _без_ сочетаний и дополнительных телодвижений.

Reset ★★★★★
()
Ответ на: комментарий от Reset

в нормальных диалогах это делается _без_ сочетаний и дополнительных телодвижений.

силой мысли, чтоле?

ananas ★★★★★
()
Ответ на: комментарий от ananas

Там внезапно есть строка ввода из коробки либо кнопочный ввод превращается в неё с помощью клика по краю.

Reset ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.