Для текущего проекта мы разрабатываем клиентское настольное приложение, которое анализирует текстовые файлы и интерфейсы с помощью веб-базы данных.Выбор кросс-платформенного инструментария GUI для настольных приложений с помощью WebServices
До сих пор мы разделили проект на часть:
(Сторонние программы) -> (Наш Desktop Client) -> (Наш Синтаксическая библиотека # 1 и # 2) -> (наш веб-сервер) -> (Наша библиотека проверки) -> (Наша база данных)
Мы столкнулись с путаницей, когда речь идет о выборе правильного пути (и лучшего языка), чтобы эти части работали вместе.
Результат третьей стороны - это простой текстовый файл, и мы просто разбираем его в формате SQL-esque для вставки в нашу базу данных после проверки того, что числа находятся в определенном диапазоне.
Первый вопрос, который мы имеем, касается самого языка клиента. Мы планируем писать библиотеки парсеров на C++, поскольку они всего лишь текстовое управление. Наш настольный клиент должен быть кросс-платформенным для Windows и Mac. В настоящее время мы склоняемся к написанию этого на Java с помощью Swing и JNI. Однако мы понимаем, что для Java существует большая ненависть, и нам придется беспокоиться о связке в JRE.
Является ли Java хорошим выбором в этой ситуации? Наши другие варианты, похоже, пишут это также на C++, используя что-то вроде Qt для графического интерфейса пользователя, или переходя к платформе, и записывая версию Windows в .NET, а затем версию для Mac. Наше сообщество Windows - подавляющее большинство пользователей.
Наша вторая проблема заключается в подключении этого клиента к нашему веб-серверу. Первоначально мы просто собирались использовать http POST для загрузки файла. Мы могли бы также FTP-файл, который кажется излишним. Мы начали изучать веб-службы, но не были уверены, что веб-служба может обрабатывать большие объемы текстовых данных.
Есть ли более простой способ сделать это? Все это текст, поэтому нет проблем отправлять их в куски или одну гигантскую строку. Если мы перейдем на веб-сервисный маршрут, это повлияет на выбор языка для настольного клиента?
Существует определенно сотни способов справиться с чем-то подобным, но большинство из этих концепций являются новыми для нас. Любые предложения будут ценны.
Имейте родственный вопрос. Если мы решили использовать C++/Qt, как вы прекратите эту ошибку «Неверный издатель» при запуске исполняемого файла? Похоже, что Java не страдает от этой проблемы. –
Это не имеет никакого отношения к языку, это относится к подписи кода. Программы Java выполняются в контексте JVM, который является подписанным исполняемым файлом. Для ваших собственных программ вам просто нужно получить доверенный сертификат подписи и подписать exe себя перед выпуском (см. Http://msdn.microsoft.com/en-us/library/ms537361(VS.85).aspx) , –