Для разработки приложения лучше всего разделить код клиента и сервера. В настольном приложении это обычно не так. Код клиента, который обрабатывает взаимодействие с пользователем, интегрирован с кодом сервера, который обрабатывает пользовательские команды. Однако в этом нет необходимости просто разделять код и обмениваться данными по TCP / IP.
Следующий вопрос: должен ли ваш клиентский код работать в браузере или как собственный графический интерфейс. Для меня родной графический интерфейс лучше по ряду причин:
- работает быстрее
- один и тот же язык программирования для клиентского и серверного кода
- меньше зависит от изменения компонентов программного обеспечения: браузер, HTML, CSS, веб-сервер
Большинство каркасов GUI являются мультиплатформенными.
Единственным недостатком является необходимость установки клиентского программного обеспечения на компьютер. Если вы хотите избежать этого, установите клиент и на сервер и получите доступ через программы сервера терминалов, такие как Citrix.
Конечно, если ваше приложение очень редко используется его пользователями, тогда веб-приложение является наиболее полезным.
Крупные компании-разработчики потратили миллионы на смену графического интерфейса пользователя на Web без добавления каких-либо дополнительных функций в свои приложения. В большинстве случаев интерфейс стал более примитивным. Так что это была огромная трата денег, которая все еще продолжается. Так что не следуй всегда стаду.