Рекомендуемое направление для разработки настольных приложений в 2019 году - ElectronJS vs OpenJFX? - PullRequest
0 голосов
/ 06 ноября 2019

Нам необходимо разработать настольное приложение, которое запускает несколько версий других настольных приложений. Некоторый контекст - это в среде высокопроизводительных вычислений (HPC). У нас есть старое приложение, построенное на Java, использующее собственный формат данных. Файлы данных содержат комментарии, используемые для отображения названия и версии приложения, переменных среды, которые необходимо установить, и переменных, которые содержат команды, которые необходимо выполнить (например, java -jar somejar.jar или запуск EXE). Мне сказали, что другие форматы, такие как YAML и JSON, были рассмотрены и исключены, потому что они «имеют не прощающие синтаксические анализаторы, и одна из ключевых целей - это компенсация человеческих ошибок. Другой ключевой вопрос - поддержка кроссплатформенных различий и их обработка». как равные. Например, косые черты, разделители полей, пробелы, табуляции, отступы. "

У меня два основных вопроса. Сначала для формата данных. Являются ли вышеуказанные причины достаточным основанием для создания собственного формата данных и пользовательских синтаксических анализаторов для него? Или они могут быть преодолены? Я думаю, что YAML может быть правильным выбором.

Вот некоторые из перечисленных целей:

#    Support line  and in-line comments
#   -Self-heal
#   -Allow %KEY%, ${KEY}, <<KEY>> style environments on all platforms
#   -Expand all environments in-line, prior to writing invocation script
#   -Invoke in separate system process
#   -Allow slashes in any direction on all platforms - / or \ - non-escaped
#   -Do not require any escaping or quoting
#   -Self-set capabilities (i.e., KEY=<<KEY>>;add

Второй - это стек технологий. Что касается разработки десктопов, я рассматриваю OpenJFX с OpenJDK-11 и использование jlinker или jpackage для создания образа приложения. Мне сказали, что индустрия отходит от этих технологий. В качестве альтернативы предлагается использовать ElectronJS , который использует HTML, CSS, JavaScript, NodeJS и встроенный Chromium. Я чувствую, что это по сути "вздор" и неэффективно. Я могу ошибаться в этом. Вы бы порекомендовали ElectronJS в качестве направления для разработки десктопов, JFX или чего-то еще?

...