В чем разница между настольным приложением java и javafx?

В чем разница между «обычным» настольным Java-приложением (с AWT или Swing) и приложением Java, созданным с помощью JavaFX?

Каковы преимущества и недостатки каждого из них? ?

10
задан MultiplyByZer0 20 May 2017 в 19:35
поделиться

2 ответа

Это не недостаток/преимущество, а понимание того, что каждый из них может предоставить, и старая поговорка "используйте правильный инструмент для работы".

Ответ от yahoo answers Источник для этого ответа:

javaFX - это фактически другой язык (похожий, но с другим синтаксисом), но он работает на JVM и может использовать классы Java. В основном разработан для "RIA" (богатых интернет-приложений), для различных устройств. Довольно много встроенных функций для разработки причудливых и ярких пользовательских интерфейсов, без всего того набора текста, который приходится делать на более "ореховом" (низкоуровневом) языке, таком как Java.

Действительно, "сравнивать" трудновато; JavaFX использует все преимущества Java и строит на нем платформу для разработки RIA's.

  • JavaFX требует JVM; но наличие Java не означает, что у вас есть JavaFX.
  • таким образом, JavaFX не является неотъемлемой частью Java.
  • любая платформа, не поддерживающая Java, следовательно, не будет поддерживать JavaFX (...., например, iPhone, iPad) - пока.
  • обратите внимание, что iPhone и iPad также не поддерживают Flash, аналогичного конкурента в этой области. (...Возможно, Flex или Silverlight - лучшие примеры конкурирующих технологий....)

Источник(и):
Javafx wikiepdia
javafx at a glance
javafx homepage похожий вопрос на stackoverflow

2
ответ дан 3 December 2019 в 19:31
поделиться

Я думаю, вы спрашиваете, каковы плюсы и минусы создания настольного приложения JavaFX по сравнению с настольным приложением Java Swing. Поэкспериментировав с обоими, я могу выделить несколько отличий:

Java Swing

Плюсы:

  • Лучший визуальный дизайнер и поддержка IDE
  • Более полный набор элементов управления
  • Подходит для создания бизнес-приложений, таких как пользовательские интерфейсы поверх базы данных, где вам не нужны возможности, выходящие за рамки стандартных (и сторонних) элементов управления.

Минусы

  • Плохая поддержка мультимедиа
  • Создание пользовательских элементов управления или пользовательских скинов очень сложно
  • Нет поддержки анимации
  • Синтаксис Java может быть неудобным для создания пользовательских интерфейсов. В среде IDE это не проблема, но если вам когда-нибудь придется что-то делать вручную, это может стать некрасивым.

JavaFX

Плюсы

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

Минусы

  • Визуальному дизайнеру нужна доработка, а я лично ею не пользуюсь. Это может быть большим негативом в зависимости от ваших потребностей.
  • По-прежнему отсутствуют некоторые элементы управления, но сейчас ситуация улучшается. Существующие элементы управления, похоже, работают хорошо.
  • Интеграция Swing существует, но они работают над изменением движка, чтобы он больше не полагался на Swing. Неясно, насколько хорошо использование элементов управления Swing из JavaFX будет работать в будущем. Поэтому я бы не стал избегать использования элементов управления Swing в JavaFX, когда это возможно.
14
ответ дан 3 December 2019 в 19:31
поделиться
Другие вопросы по тегам:

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