JavaFX

редактировать
Программная платформа Java для GUI
JavaFX
JavaFX Logo.png
Разработчик (и) Sun Microsystems (теперь приобретена Oracle Corporation )
Первоначальный выпуск4 декабря 2008 г.; 11 лет назад (2008-12-04)
Стабильный выпуск 15 / сентября 2020 г.; 1 месяц назад (2020- 09)
Репозиторий Измените это в Wikidata
Операционная система Среда выполнения Java
Платформа Кросс-платформенная
Доступна вJava
Тип Application framework
License EULA, части под GPL + исключение связывания, open- источник
Веб-сайтwiki.openjdk.java.net / display / OpenJFX / Main и openjfx.io

JavaFX - это программная платформа для создания и доставки настольных приложений, а также многофункциональных Интернет-приложений (RIA), которые могут работать на самых разных устройствах. JavaFX предназначен для замены Swing в качестве стандартного GU I библиотека для Java SE, но обе они будут включены в обозримом будущем. JavaFX поддерживает настольные компьютеры и веб-браузеры в Microsoft Windows, Linux и macOS.

на настольных компьютерах, JavaFX поддерживает Windows Vista, Windows 7, Windows 8, Windows 10, macOS и Linux операционные системы. Начиная с JavaFX 1.2, Oracle выпустила бета-версии для OpenSolaris. На мобильных устройствах JavaFX Mobile 1.x может работать в нескольких мобильных операционных системах, включая Symbian OS, Windows Mobile и проприетарные операционные системы реального времени.

С выпуском JDK 11 в 2018 году Oracle сделал JavaFX частью OpenJDK в рамках проекта OpenJFX, чтобы увеличить темпы его развития. Поддержка Oracle для JavaFX также доступна для текущей долгосрочной версии (Java JDK 8) до марта 2025 года.

Открытый исходный код JavaFXPorts работает для iOS (iPhone и iPad) и Android, а также встроен (Raspberry Pi ); и соответствующее коммерческое программное обеспечение, созданное под названием «Gluon», поддерживает те же мобильные платформы с дополнительными функциями плюс рабочий стол. Это позволяет из единой базы исходного кода создавать приложения для настольных компьютеров, устройств iOS и Android.

Содержание

  • 1 Возможности
    • 1.1 WebView
    • 1.2 JavaFX Mobile
  • 2 Компоненты
  • 3 История
    • 3.1 Ранние выпуски
    • 3.2 Выпуски после повышения версии
    • 3.3 Дальнейшая работа
  • 4 Доступность
  • 5 Лицензия
  • 6 См. Также
  • 7 Ссылки
  • 8 Библиография
  • 9 Внешние ссылки

Функции

JavaFX 1.1 был основан на концепции «общий профиль», который предназначен для охвата всех устройств, поддерживаемых JavaFX. Такой подход позволяет разработчикам использовать общую модель программирования при создании приложения, предназначенного как для настольных, так и для мобильных устройств, и совместно использовать большую часть кода, графических ресурсов и контента между настольной и мобильной версиями. Чтобы удовлетворить потребность в настройке приложений для определенного класса устройств, платформа JavaFX 1.1 включает API для настольных или мобильных устройств. Например, профиль JavaFX Desktop включает Swing и расширенные визуальные эффекты.

Для конечных пользователей функция «Перетащить для установки» позволяет им перетащить виджет JavaFX - приложение, находящееся на веб-сайте, - и поместить его на свой рабочий стол. Приложение не потеряет свое состояние или контекст даже после закрытия браузера. Приложение также можно повторно запустить, щелкнув ярлык, который автоматически создается на рабочем столе пользователя. Это поведение включено из коробки механизмом Java-апплетов с момента обновления Java 6u10 и используется JavaFX из нижележащего уровня Java. Sun рекламирует «Drag-to-Install» как открытие новой модели распространения и позволяющее разработчикам «оторваться от браузера».

JavaFX 1.x включает набор подключаемых модулей для Adobe Photoshop и Illustrator, которые позволяют интегрировать расширенную графику непосредственно в приложения JavaFX. Плагины генерируют код JavaFX Script, который сохраняет слои и структуру графики. Затем разработчики могут добавлять анимацию или эффекты к импортированной статической графике. Существует также инструмент для преобразования графики SVG (также известный как Media Factory), который позволяет импортировать графику и предварительно просматривать ресурсы после преобразования в формат JavaFX.

До версии 2.0 JavaFX разработчики использовали статически типизированный декларативный язык под названием JavaFX Script для создания приложений JavaFX. Поскольку сценарий JavaFX был скомпилирован с использованием байт-кода Java, программисты также могли использовать вместо него код Java. Приложения JavaFX могут работать на любом настольном компьютере, который может запускать Java SE, или на любом мобильном телефоне, который может запускать Java ME.

JavaFX 2.0 и более поздних версий реализован как «родная» библиотека Java, и приложения с использованием JavaFX написаны на «родном» Java-коде. Сценарий JavaFX был отменен Oracle, но разработка продолжается в проекте Visage. JavaFX 2.x не поддерживает операционную систему Solaris или мобильные телефоны ; однако Oracle планирует интегрировать JavaFX в Java SE Embedded 8, а Java FX для процессоров ARM находится на этапе предварительной версии для разработчиков.

Sun Microsystems лицензировала специальный шрифт гарнитуры под названием Amble для использования на устройствах на базе JavaFX. Семейство шрифтов было разработано специалистами по дизайну mobile пользовательского интерфейса и доступно как часть JavaFX SDK 1.3 Release.

WebView

WebView, встроенный компонент браузера, поддерживает следующие функции HTML5:

  • Canvas
  • Воспроизведение мультимедиа
  • Элементы управления формы (кроме)
  • Редактируемые содержание
  • Ведение истории
  • Поддержка тегов и
  • Поддержка тегов
    и
  • DOM
  • MathML
  • SVG
  • CSS
  • JavaScript
  • Поддержка доменных имен, написанных на национальных языках

JavaFX Mobile

JavaFX Mobile была реализацией платформы JavaFX для многофункционального Интернета приложения, предназначенные для мобильных устройств. Приложения JavaFX Mobile 1.x могут разрабатываться на том же языке, JavaFX Script, что и приложения JavaFX 1.x для браузера или рабочего стола, и с использованием одних и тех же инструментов: JavaFX SDK и JavaFX Production Suite. Эта концепция позволяет совместно использовать кодовую базу и графические ресурсы для настольных и мобильных приложений. Благодаря интеграции с Java ME приложения JavaFX имеют доступ к возможности под лежащий телефон, например, файловая система, камера, GPS, bluetooth или акселерометр.

Независимая платформа приложений, построенная на Java, JavaFX Mobile - это возможность работы в нескольких мобильных операционных системах, включая Android, Windows Mobile и проприетарные операционные системы реального времени.

JavaFX Mobile была общедоступна как часть JavaFX Версия 1.1, анонсированная Sun Microsystems 12 февраля 2009 г.

Sun планировала включить поддержку JavaFX «из коробки» на устройствах, работая с производителями телефонов и операторами мобильной связи, чтобы предварительно загрузите среду выполнения JavaFX Mobile на мобильные телефоны. JavaFX Mobile, работающий на Android, был продемонстрирован на JavaOne 2008, а некоторые партнерские отношения (включая LG Electronics, Sony Ericsson ) были объявлены при запуске JavaFX Mobile в феврале., 2009.

Компоненты

Платформа JavaFX 2.x включает следующие компоненты:

  • JavaFX SDK : инструменты времени выполнения. Графика, медиа-веб-сервисы и библиотеки форматированного текста. Java FX 1.x также включал компилятор JavaFX, который теперь устарел, поскольку пользовательский код JavaFX написан на Java.
  • NetBeans IDE для JavaFX: NetBeans с палитрой перетаскивания для добавления объектов с преобразованиями, эффектами и анимации, а также набор примеров и лучших практик. Для поддержки JavaFX 2 вам потребуется как минимум NetBeans 7.1.1. Для пользователей Eclipse существует подключаемый модуль, поддерживаемый сообществом, размещенный на e (fx) clipse.
  • Конструктор сцен JavaFX: он был представлен для Java FX 2.1 и более поздних версий. Пользовательский интерфейс (UI) создается путем перетаскивания элементов управления из палитры. Эта информация сохраняется в виде файла FXML, особого формата XML.
  • Инструменты и плагины для творческих инструментов (также известный как Production Suite): плагины для Adobe Photoshop и Adobe Illustrator, которые могут экспортировать графические ресурсы в код JavaFX Script, инструменты для преобразования графики SVG в код JavaFX Script и предварительный просмотр ресурсов, преобразованных в JavaFX из других инструментов (в настоящее время не поддерживается в версиях JavaFX 2.x)

История

Ранние выпуски

JavaFX Script, компонент сценариев JavaFX, начал свою жизнь как проект Криса Оливер, названный F3.

Sun Microsystems впервые анонсировала JavaFX на JavaOne всемирной конференции разработчиков Java в мае 2007 года.

В мае 2008 года Sun Microsystems объявила о планах поставки JavaFX для браузеров и настольных ПК к третьему кварталу 2008 года и JavaFX для мобильных устройств во втором квартале 2009 года. Sun также объявила о многолетнем соглашении с On2 Technologies на предоставление комплексного видео eo для семейства продуктов JavaFX с использованием видеокодека TrueMotion компании. С конца июля 2008 года разработчики могут загрузить предварительную версию JavaFX SDK для Windows и Macintosh, а также подключаемый модуль JavaFX для NetBeans 6.1.

Основные выпуски, поскольку JavaFX 1.1 имеет название выпуска, основанное на улице или районе. в Сан-Франциско. У выпусков обновлений обычно нет названия.

4 декабря 2008 г. Sun выпустила JavaFX 1.0.2.

JavaFX для мобильной разработки, наконец, стал доступным как часть выпуска JavaFX 1.1 (названного Franca), официально анонсированного 12 февраля 2009 года.

JavaFX 1.2 (названный Marina) был выпущен на JavaOne 2 июня 2009 г. В этом выпуске представлены:

JavaFX 1.3 (названный Soma) был выпущен 22 апреля, 2010. В этом выпуске представлены:

  • Улучшения производительности
  • Поддержка дополнительных платформ
  • Улучшенная поддержка элементов управления пользовательского интерфейса

JavaFX 1.3.1 был выпущен 21 августа 2010 года. Представлен выпуск:

  • Быстрый запуск приложения JavaFX
  • Пользовательский индикатор выполнения для приложения startup

JavaFX 2.0 (названный Presidio) был выпущен 10 октября 2011 года. В этом выпуске представлены:

  • Новый набор Java API, открывающий возможности JavaFX для всех Java-разработчиков, без необходимости изучения нового языка сценариев. Поддержка Java FX Script была окончательно прекращена.
  • Поддержка высокопроизводительной отложенной привязки, выражений привязки, выражений привязанной последовательности и переоценки частичной привязки.
  • Отказ от поддержки для JavaFX Mobile.
  • Oracle объявляет о своем намерении создать JavaFX с открытым исходным кодом.
  • Среда выполнения JavaFX становится зависящей от платформы, используя возможности системы, поскольку видеокодек доступен в системе; вместо реализации только одной кроссплатформенной среды выполнения, как в JavaFX 1.x.

В библиотеки JavaFX для многопоточности были внесены различные улучшения. API-интерфейсы задач были обновлены, чтобы поддерживать гораздо более сжатые возможности потоковой передачи (то есть класс JavaTaskBase больше не нужен, поскольку все API-интерфейсы находятся на Java, а требование иметь интерфейс обратного вызова и класс реализации Java больше не нужны). Кроме того, граф сцены был разработан, чтобы позволить сценам быть построенными на фоновых потоках, а затем присоединяться к «живым» сценам в потокобезопасной манере.

26 мая 2011 г. Oracle выпустила бета-версию JavaFX 2.0. Бета-версия была доступна только для 32- и 64-разрядных версий Microsoft Windows XP, Windows Vista и Windows 7. Версия раннего доступа для Mac OS X также была доступна для участников Партнерской программы JavaFX на сайте время, в то время как поддержка Linux была запланирована в будущем выпуске JavaFX. JavaFX 2.0 был выпущен с поддержкой только Windows. Поддержка Mac OS X была добавлена ​​с JavaFX 2.1. Поддержка Linux была добавлена ​​с JavaFX 2.2.

JavaFX 2.0 использует новый декларативный язык XML под названием FXML.

27 апреля 2012 года Oracle выпустила версию 2.1 JavaFX, которая включает следующие основные функции:

  • Первая официальная версия для OS X (только настольный компьютер)
  • H.264 / MPEG-4 AVC и Advanced Audio Coding поддерживает
  • CoolType текст
  • Усовершенствования пользовательского интерфейса, включая элементы управления поля со списком, диаграммы (составные диаграммы) и панели меню
  • Компонент Webview теперь позволяет JavaScript выполнять вызовы методов Java

14 августа 2012 г. Oracle выпустила версию 2.2 JavaFX, который включает следующие основные функции:

  • Поддержка Linux (включая подключаемые модули и веб-запуск)
  • Canvas
  • Новые элементы управления: Color Picker, Pagination
  • Поддержка HTTP Live Streaming
  • Сенсорные события и жесты
  • API управления изображениями
  • Собственная упаковка

JavaFX 2.2 добавляет новую опцию упаковки под названием «Собственная упаковка», позволяя упаковывать приложение как «собственный комплект». Это дает пользователям возможность установить и запустить приложение без каких-либо внешних зависимостей от системной JRE или FX SDK.

Начиная с Oracle Java SE 7 update 6 и Java FX 2.2, JavaFX входит в комплект для установки с платформой Oracle Java SE.

Выпуски после повышения версии

JavaFX теперь часть JRE / JDK для Java 8 (выпущена 18 марта 2014 г.) и имеет ту же нумерацию, то есть JavaFX 8.

JavaFX 8 добавляет несколько новых функций, в том числе:

  • Поддержка 3D-графики
  • Поддержка сенсора
  • Поддержка MathML с обновлением JavaFX 8 192
  • Поддержка печати и форматированного текста
  • Стандартные диалоговые шаблоны посредством включения ControlsFX для замены JOptionPane в JavaFX 8u40

Функции JavaFX 9 были сосредоточены на извлечении некоторых полезных частных API из кода JavaFX, чтобы сделать эти API общедоступными:

  • JEP 253: Подготовить элементы управления пользовательского интерфейса JavaFX и API CSS для Модуляризация

Oracle объявила о своем намерении прекратить поставки JavaFX с JDK 11 и более поздними версиями. Он больше не входит в комплект с последней версией.

JavaFX 11 был впервые выпущен в сентябре 2018 года.

  • JavaFX 11.0.2 - последний общедоступный выпуск JavaFX 11.
  • JavaFX 11.0.3 - последний выпуск JavaFX 11 для тех, кто с долгосрочным контрактом на поддержку.
  • Поддержка MathML с JavaFX 11
  • FX Robot API

JavaFX 12 впервые был отправлен в марте 2019 года.

  • JavaFX 12.0.1.

JavaFX 13 выпущен в сентябре 2019 года.

JavaFX 14 был выпущен в марте 2020 года.

JavaFX 15 - последний выпуск JavaFX, выпущенный в сентябре 2020 года.

Работа в будущем

Oracle также объявила в ноябре 2012 года об открытом исходном коде Decora, языка шейдеров DSL для JavaFX, позволяющего генерировать шейдеры для OpenGL и <47.>Direct3D.

Oracle написала в своей дорожной карте поддержки клиентов, что новые исправления JavaFX будут по-прежнему поддерживаться в Java SE 8 до марта 2025 года. Ранее Oracle объявила, что они «работают с заинтересованными третьими сторонами, чтобы упростить создание и поддержку. JavaFX как отдельный дистрибутив совместимый модуль с открытым исходным кодом ". Компания Gluon продолжит поддерживать JavaFX в будущем в качестве загружаемого модуля в дополнение к JDK.

Доступность

По состоянию на март 2014 г. JavaFX развернут в Microsoft Windows, OS X и Linux. Oracle имеет внутренний порт JavaFX на iOS и Android. Поддержка ARM доступна начиная с JavaFX 8 11 февраля 2013 г. Ричард Бэр, главный архитектор клиентской платформы Java в Oracle, объявил, что Oracle откроет открытый исходный код для реализаций платформы JavaFX для iOS и Android в ближайшие два месяца.

Начиная с версии 8u33 JDK для ARM, поддержка JavaFX Embedded была удалена.

Поддержка будет продолжена для архитектур на базе x86.

Коммерческий порт JavaFX для Android и iOS были созданы под названием «Gluon».

Лицензия

Существуют различные лицензии для модулей, составляющих среду выполнения JavaFX:

  • Части основной среды выполнения JavaFX все еще проприетарное программное обеспечение и его код еще не опубликованы, однако разработчики и руководители, стоящие за технологией, движутся к полному открытию кода,
  • компилятор JavaFX и более старая версия из 2D графа сцены выпущены по лицензии GPL v2,
  • NetBeans pl ugin для JavaFX имеет двойную лицензию на условиях GPL v2 и CDDL.

. Во время разработки Sun объяснил, что они развернут свою стратегию для модели лицензирования JavaFX для первого выпуска JavaFX. После выпуска в 2008 году вице-президент Sun по клиентскому программному обеспечению объяснил, что вскоре они опубликуют спецификацию для JavaFX и связанных с ним форматов файлов и продолжат открывать исходный код JavaFX. время выполнения и отделить это ядро ​​от проприетарных частей, лицензируемых внешними сторонами.

На JavaOne 2011 Oracle Corporation объявила, что JavaFX 2.0 станет открытым исходным кодом. С декабря 2011 года Oracle начала открывать исходный код кода JavaFX в рамках GPL + исключение связывания.

. В декабре 2012 года новые части исходного кода JavaFX были открыты Oracle:

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

См. Также

  • icon Портал компьютерного программирования

Ссылки

Библиография

Внешние ссылки

Последняя правка сделана 2021-05-24 03:56:25
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте