Мне нужно написать приложение для настольных компьютеров, и с тех пор, как я начал использовать Swing, у нас будет кривая обучения с любой технологией.
Есть ли какие-либо преимущества в моем приложении с помощью JavaFX 2?
Мне нужно написать приложение для настольных компьютеров, и с тех пор, как я начал использовать Swing, у нас будет кривая обучения с любой технологией.
Есть ли какие-либо преимущества в моем приложении с помощью JavaFX 2?
4 года назад У меня был такой же вопрос, и я пришел к выводу, что лучше всего использовать Swing, поскольку в те дни все еще было написано много сторонних библиотек для Swing. Кроме того, 1.0 выпусков от Sun обычно были немного грубыми по краям (я сжег себя на JSF 1.0 и JPA 1.0: -).
Сегодня многие библиотеки имеют аналоги JavaFX или доступны в виде библиотеки JavaFX. Тем не менее, есть также много библиотек, которые до сих пор являются эксклюзивными. Также я немного поработал с JavaFX 2.0, и он кажется действительно полным. Я не натолкнулся на шоустов.
Вам нужно проверить, сколько внешних библиотек пользовательского интерфейса вы собираетесь использовать помимо Swing/JavaFX (и какой). Если ответа не много или много, есть альтернатива Java FX (или просто для того, чтобы сделать это самостоятельно), я бы определенно пошел на JavaFX. Также вы можете использовать компоненты Swing в JavaFX.
Как уже говорилось, JavaFX собирается осудить Swing в будущем, и Oracle кажется совершенным на JavaFX (он также будет раскрыт). Поэтому я настоятельно рекомендую JavaFX.
Обновление состояния 13 апреля 2014:
Если вы не были уверены 2 года назад: JavaFX теперь определенно выглядит как способ. Хотя Swing, вероятно, будет долгое время находиться в режиме обслуживания. Это потребует больших усилий, чтобы полностью переносить большие приложения (например, IntellIJ или Netbeans) в JavaFX. И для этих больших приложений такой крупномасштабный порт, вероятно, сейчас не стоит.
Оба варианта являются хорошими:
Ни один из них, скорее всего, не заменит другого: они имеют несколько разные целевые цели и, вероятно, будут сосуществовать на многие годы вперед.