Создать десктопное ПО для второй версии нашего приложения: Avalonia UI или Qt

Цена договорная
19 августа 2022, 12:33 • 11 откликов • 70 просмотров
Требуемое ПО - это GUI-клиент для серверной части.
Придумывать с нуля ничего не нужно - есть работающий образец в виде монолитного приложения.
Теперь более подробно.

Нужно сделать примерно вот это:

https://www.rpa-robin.ru/programmnye-roboty

или вот это:

https://app.diagrams.net/

или вот это:

https://www.bpsimulator.com/

При этом есть пара важных отличий от приведённых выше примеров
(хотя последний пример делает что-то, что похоже на наш запрос).

Во-первых, мы создаём средство для создания промышленных программ.
С помощью нашего ПО технолог, инженер, не имеющий навыков программирования на традиционных ЯП,
должен иметь возможность создавать программы для управления некоторыми параметрами производства.

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

У нас есть первая версия нашего ПО, выполненная на .Net 4.8 + WPF. Это монолит только под MS Windows.
Нам нужно кроссплатформенное ПО.

Серверную часть, т.е. бизнес-логику мы будем писать на .Net 6.
Для организации связи с UI, скорее всего, будем использовать Protobuf + gRPC.

Для создания кроссплатформенного UI мы видим 3 очевидных пути:

- веб-интерфейс;
- Avalonia UI;
- Qt.

(MAUI не приходится рассматривать, т.к. даже в роадмапе у MS нет заявленной поддержки Linux.
Linux - это принципиально.)

По веб-интерфейсу есть сомнения в плане производительности.

По Avalonua - как нам кажется, это лучший вариант, но очень мало специалистов по этому фреймворку.
Он лучший потому, что всё было бы написано на .Net, и, по заявлению команды разработки, всё работает
практически на всех известных платформах.

По Qt - вполне возможно. Плюс у нас в компании уже есть примеры перевода проектов на Qt.
К тому же Protobuf + gRPC для С++ реализованы полноценно.

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

Мы можем в режиме реального времени полностью продемонстрировать работу первой версии нашего ПО.

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