JavaFX
— платформа на основе
Java
для создания
приложений
с насыщенным
графическим интерфейсом
. Может использоваться как для создания настольных приложений, запускаемых непосредственно из-под
операционных систем
, так и для интернет-приложений (
RIA
), работающих в
браузерах
, и для приложений на мобильных устройствах. JavaFX призвана заменить использовавшуюся ранее библиотеку
Swing
. Платформа JavaFX конкурирует с
Microsoft Silverlight
,
Adobe Flash
и аналогичными системами.
Начиная с версии Java 11 больше не входит в Java SE и не разрабатывается компанией Oracle (как отдельный модуль поддерживается компанией Gluon)
. Oracle будет поддерживать JavaFX в составе Java JDK 8 до марта 2025.
Версия 1.0
Технология JavaFX была впервые продемонстрирована корпорацией
Sun Microsystems
на конференции JavaOne в мае
2007 года
.
4 декабря
2008 года
вышла версия 1.0 платформы, содержащая следующие компоненты:
-
Средства разработки —
компилятор
и среда исполнения JavaFX,
язык программирования
JavaFX Script, а также графические, медийные и веб-библиотеки для создания RIA-приложений для настольных компьютеров, веб-сайтов и мобильных устройств.
-
Интегрированная среда разработки
NetBeans IDE
(версии 6.*) — средства для кодирования и отладки приложений, написанных на JavaFX Script. В редакторе JavaFX Script есть возможность быстрого добавления объектов JavaFX с уже готовыми геометрическими фигурами, компонентами интерфейса пользователя, средствами преобразования и анимацией.
-
Production Suite
— набор инструментов и плагинов для импорта графических объектов в приложения JavaFX. Включает следующие компоненты:
-
Плагины для графических редакторов
Adobe Photoshop
CS3, CS4 и
Adobe Illustrator
CS3, CS4. С помощью плагинов можно экспортировать графические объекты из этих приложений в код JavaFX Script.
-
Media Factory
: набор инструментов для конвертирования
SVG
-графики в код JavaFX и просмотра графических объектов, импортированных в JavaFX из других форматов. Также включает примеры приложений, учебные курсы, статьи, API-документацию и примеры кода.
Программирование для платформы
Приложения JavaFX создаются с помощью декларативного языка программирования JavaFX Script. Для разработки приложений на языке JavaFX Script необходимо установить JavaFX
SDK
, который входит в поставку с
Java SE 7
. Из кода, написанного на языке JavaFX Script, можно обращаться к любым библиотекам Java. Поэтому совместное использование языков Java и JavaFX Script позволяет решать разнообразные задачи, например,
логика бизнес-приложения
может быть написана на Java, а графический интерфейс пользователя — на JavaFX Script.
По состоянию на 2010 год поддерживаются следующие платформы:
Для создания приложений для мобильных устройств разработчикам предлагается мобильный эмулятор, входящий в состав SDK.
История изменений
JavaFX 1.2
Дата выпуска —
2 июня
2009 года
.
-
Значительно переработана предыдущая версия.
API
и синтаксис были изменены настолько, что стали несовместимы с предыдущими версиями. Из этого следует, что для работы программ, скомпилированных для предыдущих версий, для работы с текущей необходима их перекомпиляция.
-
Улучшена поддержка
CSS
.
-
Улучшены элементы графического интерфейса предыдущей версии, добавлены новые.
-
Улучшена производительность JavaFX Runtime.
-
В плагине к среде разработки NetBeans 6.8 — улучшена поддержка разработки приложений для мобильных устройств.
-
В плагине к среде разработки NetBeans 6.8 улучшен редактор кода.
-
В JavaFX Production Suite добавлены опции.
JavaFX 1.3
Вышел
22 апреля
2010 года
.
-
Добавлены новые элементы графического интерфейса.
-
Улучшена поддержка CSS.
-
Улучшены элементы графического интерфейса предыдущей версии.
-
Улучшена производительность JavaFX Runtime.
-
Добавлена поддержка разработки приложений для TV (в плагин к среде разработки NetBeans 6.9 включён соответствующий эмулятор).
-
В плагине к среде разработки NetBeans 6.9 улучшена поддержка разработки приложений для мобильных устройств. На Mac OC теперь есть возможность использовать эмулятор мобильных устройств.
-
В плагине к среде разработки NetBeans 6.9 улучшен редактор кода (расширен список возможного
рефакторинга
).
-
В JavaFX Production Suite добавлены опции.
JavaFX 1.3.1
Выпущен
21 августа
2010 года.
-
Ускорен запуск приложений JavaFX.
-
Новый процесс запуска JavaFX-
апплетов
и Web-приложений, которые могут быть настроены разработчиками.
JavaFX 2.0
Вышел
10 октября
2011 года
.
-
Медиа-движок, поддерживающий воспроизведение мультимедийного контента.
-
Веб-компонент, позволяющий встраивать HTML в приложения JavaFX.
-
Обновлённый плагин для браузера, который осуществляет загрузку апплетов JavaFX на основе
Prism
.
-
Набор элементов управления
пользовательского интерфейса
, такие, как диаграммы, таблицы, меню и панели.
-
Для
декларативного описания
пользовательских интерфейсов применён
XML
подобный язык разметки —
.
-
Примеры приложений, демонстрирующие технологии JavaFX 2.0.
JavaFX 2.1
Дата выпуска
27 апреля
2012 года
-
Поддержка
H.264
и
AAC
.
-
Официальная поддержка Mac OS X.
-
LCD text.
-
Улучшены компоненты пользовательского интерфейса:
Combo box
, диаграмма и панель меню.
-
Компонент Webview теперь позволяет посредством JavaScript вызывать Java-методы.
JavaFX 2.2
Дата выпуска
14 августа
2012 года
-
Поддержка воспроизведения H.264 и AAC.
-
Поддержка Linux (включая плагин для браузера и WebStart-приложения).
-
Canvas
.
-
Новые компоненты управления: Color Picker, Pagination.
-
Поддержка HTTP Live Streaming (не будет работать в Windows XP).
-
Сенсорные события и жесты.
-
API для манипуляции над изображением.
JavaFX 8
Дата выпуска
18 марта
2014 года
JavaFX стал частью пакетов JRE/JDK вместе с версией Java 8.
-
Поддержка 3D графики.
-
Поддержка сенсорного ввода.
-
Поддержка печати.
JavaFX 11
Дата выпуска
11 сентября
2018 года
-
Oracle объявила о прекращении поставки JavaFX с JDK 11 и более поздними версиями (JavaFX больше не входит в комплект JDK).
-
Поддержка MathML с JavaFX 11
-
FX Robot API
См. также
Примечания
-
— 2023.
-
(неопр.)
. Дата обращения: 10 февраля 2019.
29 апреля 2019 года.
-
(неопр.)
.
Oracle Technology Network
. Oracle (13 мая 2020). Дата обращения: 31 мая 2020.
31 декабря 2019 года.
Ссылки
-
(англ.)
-
(англ.)
-
*
— выступление на конференции
YaC
(рус.)
|
Платформы
|
|
Технологии
Sun
|
|
Основные сторонние технологии
|
|
История
|
|
Свойства языка
|
|
Скриптовые языки
|
|
Конференции Java
|
|