Вот что я хочу сказать по поводу этого…
1. PHP в этой схеме не нужен. UI часть целиком можно реализовать на Javascript (или Typescript) в форме Single Page Application на любом JS фреймворке. Далее найти какую-нибудь приличную C++ библиотеку для реализации протокола HTTP и выдачи статических файлов (с кодом, реализующим UI логику). Полезные данные передавать прямо из/в C++ путём (де)сериализации в формат JSON (также можно передавать данные как изображения PNG/JPEG/GIF и даже в бинарном виде)
2. PHP в этой схеме вреден. Потому что:
а) Часть UI логики окажется написана на Javascript, часть на PHP. Потом непременно возникнут пересечения по функционалу в той и другой части, но повторно использовать один и тот же код будет невозможно, потому что языки разные. В общем чем меньше языков — тем лучше, особенно если два разных языка отвечают за сходные задачи.
б) Интерпретатор PHP сожрёт лишнюю память и утяжелит установочный пакет.
3. Ваше приложение будет либо открываться в окне браузера, либо вам придётся встраивать в свой установочный пакет собственный браузер «без рамки». Это много мегабайт (предположительно заметно больше чем Qt, но я не измерял, если что:) И памяти оно тоже сожрёт. Для большого приложения вряд ли это будет критично, а вот для маленькой софтинки из пары окон и десятка кнопок — неприятно.
1. PHP в этой схеме не нужен. UI часть целиком можно реализовать на Javascript (или Typescript) в форме Single Page Application на любом JS фреймворке. Далее найти какую-нибудь приличную C++ библиотеку для реализации протокола HTTP и выдачи статических файлов (с кодом, реализующим UI логику). Полезные данные передавать прямо из/в C++ путём (де)сериализации в формат JSON (также можно передавать данные как изображения PNG/JPEG/GIF и даже в бинарном виде)
2. PHP в этой схеме вреден. Потому что:
а) Часть UI логики окажется написана на Javascript, часть на PHP. Потом непременно возникнут пересечения по функционалу в той и другой части, но повторно использовать один и тот же код будет невозможно, потому что языки разные. В общем чем меньше языков — тем лучше, особенно если два разных языка отвечают за сходные задачи.
б) Интерпретатор PHP сожрёт лишнюю память и утяжелит установочный пакет.
3. Ваше приложение будет либо открываться в окне браузера, либо вам придётся встраивать в свой установочный пакет собственный браузер «без рамки». Это много мегабайт (предположительно заметно больше чем Qt, но я не измерял, если что:) И памяти оно тоже сожрёт. Для большого приложения вряд ли это будет критично, а вот для маленькой софтинки из пары окон и десятка кнопок — неприятно.