LINUX.ORG.RU

Что выбрать для написания GUI в 2021.

 ,


0

5

Добрый день.

Что лучше выбрать для написания десктопного GUI приложения в 2021 году.

Нужно написать кросплатфоменный интерфейс.

Там должны быть дерево, таблицы (большие, сортировки, группировки, …), формы. Хочется не писать их самостоятельно.

Рассматриваю варианты:

  • C# (WinForms или Avalonia, Gtk), поскольку на c# писал мало, и есть ощущения, что скорость разработки не очень высокая. Сходу полноценных таблиц и деревьев вообще не нашел.

  • Python (PySide6), посмотрел по gui на python. Варианты по сути:

    • PyQt(PySide) 6 версия уже достаточно стабильна ? Документации навскидку не очень много нашел.
    • wxWidgets есть ощущение, что менее мощный. (тут смущает, что будет медленнее C# и опять же GIL).
  • Web (web2ui) тут уже есть готовые хорошие таблицы. (но есть ощущение, что скорость работы будет проигрывать, плюс есть проблемы с работой с локальными ресурсами и многоконностью). По ощущению скорость разработки будет самая быстрая.

В C++ лезть не хочется, так как давно на нем не писал, и есть ощущение, что на нем разработка будет еще медленнее чем на C#.

Предварительно кажется, что python будет компромисным вариантом.

Разработчик пока всего один, и не хочется надолго увязать в написании GUI, так как есть и другие задачи.

У кого какие соображения по данному вопросу ?



Последнее исправление: ol1mp (всего исправлений: 1)
Ответ на: комментарий от izzholtik

мордочкотыканье

ненужны никакие редакторы, все из кода лучше

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

Пытхон - ублюдским синтаксисом и тормозами. Я не понимаю, честно говоря, зачем линуксоиды этим дерьмищем пользуются, когда есть баш для простых задач и С или С++ для сложных! И будет в случае с башем так же тормознуто, в случае с С или С++ - значительно быстрей.

Qt не угодил попыткой сделать кроссплатформенные решения. В итоге оно превратилось в убогое адское дерьмище.

Кроссплатформенность нафиг не нужна! Пиши нативные приложения. Написал на сишечке демон - ОК, теперь на чем угодно рисуй морду к нему (хоть на вебе) и «общайся» юниксвейно (через сокеты, например).

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

Ты же знаешь, что если сделать что-то, чем смогут пользоваться даже идиоты, то только идиоты этим и будут пользоваться!

Форточки от M$ — яркий тому пример. Ну и пытхон тоже.

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

В пытхоне нет вообще ничего такого, что нельзя было бы на баше написать!

Да, кстати, без сишных и крестовых модулей пытхон вообще сосет у баша!

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

Ты видел, чтобы ядро ОС на брейнфаке написали? А вот на С написали. И пишут дальше.

На пытхоне же не напишут никогда, потому что у этого дерьма даже компилятора нет (cython не в счет, т.к. не совсем то).

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

Кроссплатформенность нафиг не нужна!

Ну, у wx вроде получилось.

Shadow ★★★★★
()

Что лучше выбрать для написания десктопного GUI приложения в 2021 году

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

gremlin_the_red ★★★★★
()

В 2021 должны быть большие кнопки с OLED-колпачками, а не GUI

anonymous
()

Winforms это самый проверенный временем кроссплатформенный вариант.

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

Winforms это самый проверенный временем кроссплатформенный вариант.

К сожалению Winforms не поддерживается в новых Mac.

Да и в Linux, он есть только в Mono, и нет в .NET.

И реализация только для X11.

Для Wayland нет и не будет.

Для новых проектов я бы не рекомендовал Winforms. Но сам по себе Winforms норм…

fsb4000 ★★★★★
()

Всё, что ты перечислил полное говно для GUI, по сравнению с Delphi. Если нужно под Linux, то бери тогда Lazarus. Всё остальное для GUI неудобное, тормозное, жирное дермище.

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

С уже 50 лет, и еще минимум 50 лет он будет актуальным. Все эти ваши хипстерские goвна, педеrust’ы и прочие пхытоны канут в Лету, а С будет работать.

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

+1

Lazarus выглядит хорошим кросплатформенным вариантом, а FreePascal ничем не хуже многих других языков. Просто какое-то религиозное предубеждение не даёт им пользоваться

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

В пытхоне нет вообще ничего такого, что нельзя было бы на баше написать!

В си нет ничего такого, что нельзя было бы на машкодах написать!

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

На пытхоне же не напишут никогда, потому что у этого дерьма даже компилятора нет

Этому дерьму он и не нужен.

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

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

религиозное предубеждение

Смузихлёбы не могут понять, как же это так - не надо пердолиться с JSX...

Shadow ★★★★★
()

Что выбрать для написания GUI в 2021.

Аду же. например, abfx под голые иксы.

смузихлёбы в опасносте

Нужно написать кросплатфоменный интерфейс

а, ну тогда GtkAda (см. например IDE GPS из GNAT) или QtAda.

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

Lazarus выглядит хорошим кросплатформенным вариантом, а FreePascal ничем не хуже многих других языков

Ada и GNAT выглядит ещё интереснее, как язык и рантайм (например, есть под STM-ки. или Ravenscar на bare metal, верифицируемый. или, SPARK с наворотами. или Ada_Kernel_Module_Framework модуль ядра написать.

либо вот: минималистичный рантайм, например Drake, либо этот

тут надо понимать, что даже базовая ада умеет в многопоточность (tasks). даже на голом железе (например, bb-runtimes)

поэтому хелловорд включает весь рантайм, статическая линковка (хелловорд с рантаймом с исключениями, многозадачностью, ООП и т.п. наворотами) по умолчанию его включает и поэтому выходит не намного меньше какого-нибудь C++.

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

FFI сделан по человечески. тоже прагмами. прозрачно линкуется с/в си.

gprbuild собирает проекты и по человечески настраивается.

в общем, я бы сказал, что Ада – это такой современный паскаль, сделанный правильно.

кроссплатформный GUI

под Аду есть например libAgar

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

Зря. Поверь мне, так и будет.

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

Всё для GUI неудобное, тормозное, жирное дермище.

Пофиксил ради справедливости.

anonymous
()

Соображения зависят от того, на чем вы можете писать без нужды сначала изучать что-то. Если хочется обязательно не С++, но чего-то похожего с максимально бесшовной возможностью ввернуть С++ или С если это понадобится, то можно попробовать D и dlangui, по функционалу там есть все что требуется и даже больше, при этом библиотека куда меньше того же qt.

abcq ★★
()
1 октября 2022 г.

В итоге остановился на tkinter, пока хватает.

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