Платформы GUI Java - которые являются там? [закрытый]

11
задан Arjan Tijms 9 May 2013 в 09:05
поделиться

6 ответов

Взгляните на Apache Pivot . Это должна быть более современная структура более высокого уровня, чем просто Swing, которая по-прежнему использует Java вместо того, чтобы полностью перейти на JavaFX. Он позиционирует себя как набор инструментов RIA, но с тем же успехом его можно использовать для автономных настольных приложений. С веб-сайта:

Apache Pivot - это платформа с открытым исходным кодом для создания полнофункциональных интернет-приложений на Java. Он сочетает в себе повышенную производительность и удобство использования современного набора инструментов RIA с надежностью платформы Java. Сводные приложения написаны с использованием комбинации Java и XML и могут быть запущены либо как апплет, либо как автономное, опционально автономное настольное приложение. [...] Pivot включает дополнительные функции, которые значительно упрощают создание современных приложений с графическим интерфейсом, включая декларативный интерфейс, привязку данных, эффекты и переходы, а также интеграцию веб-сервисов.

1
ответ дан 3 December 2019 в 07:10
поделиться

Я не рекомендую использовать инструмент компоновки; код очень трудно читать и поддерживать.

также, если вам нужен доступ к базе данных к объектам, тогда netbeans оставит менеджеры сущностей открытыми и создаст серьезные проблемы и ошибки позже, если вашему приложению потребуется использовать более одного потока.

-2
ответ дан 3 December 2019 в 07:10
поделиться

Swing и SWT - два основных кандидата, да. На ум также приходит JavaFX, но я думаю, что он еще не готов к использованию в прайм-тайм: у него не было инструмента редактирования пользовательского интерфейса, о котором стоит говорить в течение длительного времени, единственный прототип корпоративного пользовательского интерфейса, о котором я знаю в реальной жизни, потерпел фиаско ...

Swing и SWT - это два, о которых вы можете подумать.Основные преимущества Swing:

  • большая независимость от платформы
  • более согласованная с точки зрения производительности
  • лучший бесплатный конструктор пользовательского интерфейса (NetBeans)
  • чрезвычайно гибкий
  • может использоваться в JavaFX

Преимущества SWT:

  • более простой API
  • использует собственные виджеты пользовательского интерфейса, когда это возможно (пользовательский интерфейс больше похож на другие приложения в той же среде)
  • в какой-то момент утверждалось, что он быстрее, чем Swing, хотя это было в Windows только

Для обеих ( Платформа NetBeans и Eclipse RCP ) существуют довольно продвинутые клиентские инфраструктуры, и если вы планируете создать что-нибудь нетривиальное, я настоятельно рекомендую вам использовать одну из это: вы получаете модульные приложения, механизмы обновления, контекстно-зависимую справку, согласованные действия над меню, горячие клавиши и панели инструментов, управление окнами и множество других отличных функций бесплатно.

Я работал с Swing и предпочитаю его SWT, поскольку он имеет более чистую компонентную модель (с SWT вам нужно беспокоиться об освобождении ресурсов, поскольку вы используете собственные виджеты), действительно многоплатформенный (SWT работает в Windows, MacOS и Linux, и даже не очень хорошо оптимизирован для всех трех), и он более настраиваемый.

Вы, вероятно, не ошиблись, пытаясь SWT или даже JavaFX, но мне было бы трудно найти вескую причину для перехода на SWT, и я бы попробовал JavaFX только для проверки состояния дел, предполагая, что приложение это просто демонстрационное приложение.

Я мог бы добавить пару ссылок, но вы можете легко поискать сами и найти результаты, которые вас интересуют.

9
ответ дан 3 December 2019 в 07:10
поделиться

Некоторое время назад у меня была похожая задача. В итоге я остановился на Swing App Framework, потому что он не пытается быть единственным фреймворком, который будет править всеми.

В итоге я написал небольшое приложение, никаких сюрпризов не было, код получился довольно чистым (включая загрузку в ackground task), клиент доволен, я доволен.

Его цель - обеспечить (украдено из blurp)

  • Жизненный цикл приложения, в частности, запуск и завершение работы GUI.
  • Поддержка управления и загрузки ресурсов, таких как строки, форматированные сообщения, изображения, цвета, шрифты и другие типы, типичные для настольных приложений.
  • Поддержка определения, управления и связывания действий, включая действия, которые выполняются асинхронно (в "фоновом режиме").
  • Постоянное состояние сессии: поддержка автоматического и выборочного сохранения состояния GUI от одного запуска приложения к другому.

это именно то, что мне было нужно.

Предупреждение: похоже, что жизнь этого фреймворка невелика, поскольку, по слухам, движущая сила покинула Sun/Oracle некоторое время назад.

Обновление: некоторые разработчики сделали форк Project Kenai под названием 'Better Swing Application Framework'. Так что жизнь после смерти все-таки есть

.
3
ответ дан 3 December 2019 в 07:10
поделиться

Существуют также фреймворки GUI, написанные не на Java, которые могут служить вашим целям. Например, GTK + написан на C, но есть языковые привязки к Java. Посмотрите, например, java-gnome .

Не знаю, насколько он хорош, но быстрый поиск в Google также обнаружил привязки Java для Qt , так что, возможно, на это тоже стоит обратить внимание.

5
ответ дан 3 December 2019 в 07:10
поделиться

В бесплатной NetBeans IDE есть инструмент визуальной компоновки как для Swing, так и для JavaFX.

0
ответ дан 3 December 2019 в 07:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: