А на чем сейчас пишут GUI под Windows
От: Bjorn Skalpe Земля  
Дата: 08.07.21 07:37
Оценка:
Всем привет. Где-то лет 10 назад я забросил программирование на С++ под Windows, в том числе и GUI, и программирую под Linux в области сервисного backend.
Когда я бросал, GUI под Windows писали на WinAPI, QT, ATL/WTL и фрейворки над ними, MFC и феймворки над ними, тогда стала появляться мода писать на C#, а функционал бизнес-логики и вычисления выносить через COM.

Вопрос, а как обстоят дела в 2021 году? Вопрос исключительно праздный и практической цели пока не имеет.
Отредактировано 08.07.2021 7:41 Bjorn Skalpe . Предыдущая версия . Еще …
Отредактировано 08.07.2021 7:40 Bjorn Skalpe . Предыдущая версия .
Отредактировано 08.07.2021 7:38 Bjorn Skalpe . Предыдущая версия .
Отредактировано 08.07.2021 7:37 Bjorn Skalpe . Предыдущая версия .
Re: А на чем сейчас пишут GUI под Windows
От: AlexGin Беларусь  
Дата: 08.07.21 08:06
Оценка: +1
Здравствуйте, Bjorn Skalpe, Вы писали:

BS>Всем привет. Где-то лет 10 назад я забросил программирование на С++ под Windows, в том числе и GUI, и программирую под Linux в области сервисного backend.

BS>Когда я бросал, GUI под Windows писали на WinAPI, QT, ATL/WTL и фрейворки над ними, MFC и феймворки над ними, тогда стала появляться мода писать на C#, а функционал бизнес-логики и вычисления выносить через COM.

BS>Вопрос, а как обстоят дела в 2021 году? Вопрос исключительно праздный и практической цели пока не имеет.


GUI под Windows:
.NET (C#), WPF: https://en.wikipedia.org/wiki/Windows_Presentation_Foundation
и более старая технология, также базирующаяся на .NET (C#):
https://en.wikipedia.org/wiki/Windows_Forms

При этом, разработка на WinForms (имхо) всё ещё достаточно поулярна.
Re: А на чем сейчас пишут GUI под Windows
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 08.07.21 08:20
Оценка: +2
Здравствуйте, Bjorn Skalpe, Вы писали:


BS>Вопрос, а как обстоят дела в 2021 году? Вопрос исключительно праздный и практической цели пока не имеет.

Microsoft рекомендует C++\winrt
А если нужно поддерживать чето древнее, то winapi и com все еще в ходу.
Re[2]: А на чем сейчас пишут GUI под Windows
От: Bjorn Skalpe Земля  
Дата: 08.07.21 08:58
Оценка:
AG>.NET (C#), WPF: https://en.wikipedia.org/wiki/Windows_Presentation_Foundation
AG>и более старая технология, также базирующаяся на .NET (C#):
AG>https://en.wikipedia.org/wiki/Windows_Forms

AG>При этом, разработка на WinForms (имхо) всё ещё достаточно поулярна.


Т.е. все ушло в область C# + XML описание. Спасибо за информацию, просто хотелось иметь представление, куда все двинулось.
Re: А на чем сейчас пишут GUI под Windows
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 08.07.21 09:38
Оценка: 6 (2) +1
Здравствуйте, Bjorn Skalpe, Вы писали:

BS>Вопрос, а как обстоят дела в 2021 году? Вопрос исключительно праздный и практической цели пока не имеет.


Из моего болота видно, как постепенно Qt вытесняет всё, даже C#. Но это для ресурсоёмких и кроссплатформенных приложений.
Re[2]: А на чем сейчас пишут GUI под Windows
От: Kernan Ниоткуда https://rsdn.ru/forum/flame.politics/
Дата: 08.07.21 22:17
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Microsoft рекомендует C++\winrt

Да ладно? А чего они как переобулись? Вроде двигали всю жизнь C#.
Sic luceat lux!
Re[3]: А на чем сейчас пишут GUI под Windows
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 08.07.21 22:29
Оценка:
Здравствуйте, Kernan, Вы писали:

K>Здравствуйте, gandjustas, Вы писали:


G>>Microsoft рекомендует C++\winrt

K>Да ладно? А чего они как переобулись? Вроде двигали всю жизнь C#.
Его и продолжают двигать.
Re[2]: А на чем сейчас пишут GUI под Windows
От: sergey2b ЮАР  
Дата: 08.07.21 22:57
Оценка: -1
Здравствуйте, Nuzhny, Вы писали:

N>Из моего болота видно, как постепенно Qt вытесняет всё, даже C#. Но это для ресурсоёмких и кроссплатформенных приложений.


у opencv есть классы позволяющие сделать простой GUI
Re[3]: А на чем сейчас пишут GUI под Windows
От: AlexGin Беларусь  
Дата: 09.07.21 07:20
Оценка:
Здравствуйте, sergey2b, Вы писали:

S>у opencv есть классы позволяющие сделать простой GUI


+100500
бесспорно есть, но набор GUI виджетов в Qt — намного богаче и разнообоазнее (я даже не говорю про QML).
Re[2]: А на чем сейчас пишут GUI под Windows
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 15.07.21 18:18
Оценка: +1
Здравствуйте, Nuzhny, Вы писали:

BS>>Вопрос, а как обстоят дела в 2021 году? Вопрос исключительно праздный и практической цели пока не имеет.


N>Из моего болота видно, как постепенно Qt вытесняет всё, даже C#. Но это для ресурсоёмких и кроссплатформенных приложений.


Честно говоря, GUI на Qt писать — то ещё удовольствие. Вот в Дельфях/С++ Билдере было самое классное, и с тех пор всё только хуже и хуже делают
Маньяк Робокряк колесит по городу
Re[3]: А на чем сейчас пишут GUI под Windows
От: kov_serg Россия  
Дата: 15.07.21 18:26
Оценка: 1 (1) -1
Здравствуйте, Marty, Вы писали:

M>Честно говоря, GUI на Qt писать — то ещё удовольствие. Вот в Дельфях/С++ Билдере было самое классное, и с тех пор всё только хуже и хуже делают


Хочеться проще U++
Re[3]: А на чем сейчас пишут GUI под Windows
От: Igore Россия  
Дата: 16.07.21 06:40
Оценка: +2
Здравствуйте, Marty, Вы писали:

BS>>>Вопрос, а как обстоят дела в 2021 году? Вопрос исключительно праздный и практической цели пока не имеет.

N>>Из моего болота видно, как постепенно Qt вытесняет всё, даже C#. Но это для ресурсоёмких и кроссплатформенных приложений.

M>Честно говоря, GUI на Qt писать — то ещё удовольствие. Вот в Дельфях/С++ Билдере было самое классное, и с тех пор всё только хуже и хуже делают


А поподробнее можно? Qt Designer с Layout, palette, qt stylesheet, по моему мнению просто в другой вселенной(на голову выше), единственное что было лучше в Билдере и Дельфи это работа с БД из дизайнера, но честно говоря, делать подключение к БД в дизайнере это странно. А, ну и плюс было множество сторонних контролов, но тут вопрос в их качестве и актуальности, а сейчас можно и на https://marketplace.qt.io/ поискать недостающее.
Re[4]: А на чем сейчас пишут GUI под Windows
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 16.07.21 07:01
Оценка: +2 :))
Здравствуйте, Igore, Вы писали:


M>>Честно говоря, GUI на Qt писать — то ещё удовольствие. Вот в Дельфях/С++ Билдере было самое классное, и с тех пор всё только хуже и хуже делают


I>А поподробнее можно? Qt Designer с Layout, palette, qt stylesheet, по моему мнению просто в другой вселенной(на голову выше), единственное что было лучше в Билдере и Дельфи это работа с БД из дизайнера, но честно говоря, делать подключение к БД в дизайнере это странно. А, ну и плюс было множество сторонних контролов, но тут вопрос в их качестве и актуальности, а сейчас можно и на https://marketplace.qt.io/ поискать недостающее.


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

Что такое palette — хз.

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

Связывание контролов с обработчиками событий — то так себе. Причем в вижуалке не всё работает, а то, что работает, тоже подглючивает. Qt Creator — ну, с формами там худо бедно можно работать, но остальное — особенно отладка...

Опять же, моки, уики — в дельфях/билдере такого просто нет. А тут сразу надо разбираться.

Сраная магия сигналов и слотов — отдельное приключение.

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


Хотя, конечно, для кроссплатформенного гуя Qt в чем-то неплох. Хотя мне больше wxWidgets зашел
Маньяк Робокряк колесит по городу
Re[5]: А на чем сейчас пишут GUI под Windows
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 16.07.21 07:12
Оценка: +4 -2
Здравствуйте, Marty, Вы писали:

M>Layout'ы вроде бы штука полезная, когда надо сделать растягивающуюся форму. Но на самом деле это не всегда и нужно. Во-вторых, я задолбался с ними воевать. Еще в дизайнере контрол кидаеш на лайоут, он по порядку последним добавляется, и нумеруется соответственно, а на форме — первым.


Я одно время много на Делфи писал, а потом на Билдере. И меня раздражал этот визуальный стиль программирования, где надо заходить в кучу окошек и выставлять кучу пропертей. И очень на этом фоне зашли QWidget'ы, где всё описывается кодом, и всё в одном месте, и всё можно посмотреть глазами. Прямо таки бальзам на сердце.
Re[5]: А на чем сейчас пишут GUI под Windows
От: Igore Россия  
Дата: 16.07.21 07:36
Оценка:
Здравствуйте, Marty, Вы писали:

M>>>Честно говоря, GUI на Qt писать — то ещё удовольствие. Вот в Дельфях/С++ Билдере было самое классное, и с тех пор всё только хуже и хуже делают


I>>А поподробнее можно? Qt Designer с Layout, palette, qt stylesheet, по моему мнению просто в другой вселенной(на голову выше), единственное что было лучше в Билдере и Дельфи это работа с БД из дизайнера, но честно говоря, делать подключение к БД в дизайнере это странно. А, ну и плюс было множество сторонних контролов, но тут вопрос в их качестве и актуальности, а сейчас можно и на https://marketplace.qt.io/ поискать недостающее.


M>Layout'ы вроде бы штука полезная, когда надо сделать растягивающуюся форму. Но на самом деле это не всегда и нужно.

А когда не нужно делать растягивающуюся форму?
M>Во-вторых, я задолбался с ними воевать. Еще в дизайнере контрол кидаеш на лайоут, он по порядку последним добавляется, и нумеруется соответственно, а на форме — первым.
Я правильно понял что претензия к автоименнованию контролов? Так то я на форме стараюсь не держать button_1, button_2 и так далее, а давать нормальные названия, а если уж и оставляю, то этот label_18 мне вообще не нужен для логики.

M>Что такое palette — хз.

Палитра, тоже для оформления стиля приложения

M>qt stylesheet — в большинстве случаев он не нужен — хочется просто форму, максимально не отличающуюся от родных в данной ОС.

Тебе можно сказать повезло.

M>Связывание контролов с обработчиками событий — то так себе. Причем в вижуалке не всё работает, а то, что работает, тоже подглючивает.

А пример можно? Но я предпочитаю всё это в С++ коде уже делать, в явном виде, без Auto-Connect в setupUi .

M>Qt Creator — ну, с формами там худо бедно можно работать, но остальное — особенно отладка...

Не MSVC это да, да и к самому редактору у меня есть претензии.

M>Опять же, моки, уики — в дельфях/билдере такого просто нет. А тут сразу надо разбираться.

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

M>Сраная магия сигналов и слотов — отдельное приключение.

Где там магия то?

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

Я на wtl наверное и за день ничего не накидаю, так как его не знаю. А вот быстро сделать форму в дизайнере проверить её по Ctrl+R что всё расстягивается, и правильно отображается можно, а потом уже логику на С++ написать дело не сложное.

M>Хотя, конечно, для кроссплатформенного гуя Qt в чем-то неплох. Хотя мне больше wxWidgets зашел

Не пробовал, не могу ничего сказать, на там вроде ничего кроме виджетов и нет.
Re[6]: А на чем сейчас пишут GUI под Windows
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 16.07.21 07:40
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N>Я одно время много на Делфи писал, а потом на Билдере. И меня раздражал этот визуальный стиль программирования, где надо заходить в кучу окошек и выставлять кучу пропертей. И очень на этом фоне зашли QWidget'ы, где всё описывается кодом, и всё в одном месте, и всё можно посмотреть глазами. Прямо таки бальзам на сердце.


То есть QML вы не заметили?
Это как раз представитель того подхода, который средний между ними и который становится основным в современном GUI — максимум таки стараются сложить на язык описания, который одновременно
1) машинночитаемый для генерации объектов и их связей,
2) машинночитаемый и машинноизменяемый для визуального редактора,
3) человекочитаемый для проверки, контроля и корректировки, где машина не справилась.

И к этому идут все, хоть и по-разному (WPF, Android...)
The God is real, unless declared integer.
Re[7]: А на чем сейчас пишут GUI под Windows
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 16.07.21 07:44
Оценка:
Здравствуйте, netch80, Вы писали:

N>То есть QML вы не заметили?


Заметил, но уже ушёл из этой области программирования. Я ещё делал GUI на чистом WinAPI, делал свои контролы на DirectDraw для вывода поверх видео, потом делал свои контролы на Direct3D с этой же целью (это для системы видеонаблюдения, где на одном экране десятки видеоканалов, нужны были быстрые контролы, видео выводилось на surface). Вот это всё меня и подкосило, тупо надоело.
Re[5]: А на чем сейчас пишут GUI под Windows
От: Mihas  
Дата: 16.07.21 07:55
Оценка:
Здравствуйте, Marty, Вы писали:

M>Layout'ы вроде бы штука полезная, когда надо сделать растягивающуюся форму.

А я в свое время в WinForms наоборот пришел к лэйаутам с авторазмерами.

M>Но на самом деле это не всегда и нужно.

Там, где не нужно, проблем обычно нет.

M>Во-вторых, я задолбался с ними воевать.

Та же фигня
Re[7]: А на чем сейчас пишут GUI под Windows
От: Igore Россия  
Дата: 16.07.21 08:05
Оценка: +1
Здравствуйте, netch80, Вы писали:

N>То есть QML вы не заметили?

N>Это как раз представитель того подхода, который средний между ними и который становится основным в современном GUI — максимум таки стараются сложить на язык описания, который одновременно
N>2) машинночитаемый и машинноизменяемый для визуального редактора,
Вот это к сожаление, не про QML, ни одной формы на qml не видел которую можно в дизайнере увидеть, не то что даже править, там же чуть что выделяем компонент и всё, дизайнер не справляется с отображением.
Re[6]: А на чем сейчас пишут GUI под Windows
От: rudzuk  
Дата: 16.07.21 09:38
Оценка:
Здравствуйте, Nuzhny, Вы писали:

N> Я одно время много на Делфи писал, а потом на Билдере. И меня раздражал этот визуальный стиль программирования, где надо заходить в кучу окошек и выставлять кучу пропертей. И очень на этом фоне зашли QWidget'ы, где всё описывается кодом, и всё в одном месте, и всё можно посмотреть глазами. Прямо таки бальзам на сердце.


А в Delphi/Builder не прописывается кодом?
avalon/3.0.0
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.