HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <ul><li><a>История</a></li>
1 <ul><li><a>История</a></li>
2 <li><a>Сферы применения</a></li>
2 <li><a>Сферы применения</a></li>
3 <li><a>Что может платформа</a></li>
3 <li><a>Что может платформа</a></li>
4 <li><a>Основные плюсы проекта</a></li>
4 <li><a>Основные плюсы проекта</a></li>
5 <li><a>Сравнение со Swing</a></li>
5 <li><a>Сравнение со Swing</a></li>
6 <li><a>Основные библиотеки</a></li>
6 <li><a>Основные библиотеки</a></li>
7 </ul><p>Java FX - это мощный инструмент, который помогает создавать клиентские приложения, оснащенные насыщенными графическими интерфейсами. Технология, развивающаяся в рамках проекта OpenJFX. Она включает в себя все преимущества Java для разработки приложений.</p>
7 </ul><p>Java FX - это мощный инструмент, который помогает создавать клиентские приложения, оснащенные насыщенными графическими интерфейсами. Технология, развивающаяся в рамках проекта OpenJFX. Она включает в себя все преимущества Java для разработки приложений.</p>
8 <p>JavaFX является современным, практичным и удобным инструментом. Он широко используется в разработке игр и десктопных приложений. Оснащен мощными средствами и дополнительными библиотеками, благодаря которым программисты могут создавать читабельные и компактные исходные коды.</p>
8 <p>JavaFX является современным, практичным и удобным инструментом. Он широко используется в разработке игр и десктопных приложений. Оснащен мощными средствами и дополнительными библиотеками, благодаря которым программисты могут создавать читабельные и компактные исходные коды.</p>
9 <h2>История</h2>
9 <h2>История</h2>
10 <p>JavaFX - проект, созданный в первой половине 2000-х годов. Его реализацией занялся некий Крис Оливер, разработчик SeeBeyond. Он создал для графических интерфейсов язык F3. В 2005 году SeeBeyond была выкуплена Sun Microsystems - она развивала Java до покупки корпорацией Oracle. F3 получил совершенно новое название - JavaFX.</p>
10 <p>JavaFX - проект, созданный в первой половине 2000-х годов. Его реализацией занялся некий Крис Оливер, разработчик SeeBeyond. Он создал для графических интерфейсов язык F3. В 2005 году SeeBeyond была выкуплена Sun Microsystems - она развивала Java до покупки корпорацией Oracle. F3 получил совершенно новое название - JavaFX.</p>
11 <p>Первые наработки платформы были представлены в мае 2007 года. Ее Sun Microsystems анонсирована в качестве инструмента создания графических приложений. В начале декабря 2008 года состоялся официальный релиз Java FX 1.0 SDK.</p>
11 <p>Первые наработки платформы были представлены в мае 2007 года. Ее Sun Microsystems анонсирована в качестве инструмента создания графических приложений. В начале декабря 2008 года состоялся официальный релиз Java FX 1.0 SDK.</p>
12 <p>Чуть позже организация была выкуплена Oracle - права на рассматриваемую платформу перешли к ней. В 2010 корпорация анонсировала, а 2011 выпустила 2 версию Java FX. Она была полностью переписана, а ранее используемый скриптовый язык убрали. С тех пор приложения можно было создавать на любом языке, поддерживающем JVM.</p>
12 <p>Чуть позже организация была выкуплена Oracle - права на рассматриваемую платформу перешли к ней. В 2010 корпорация анонсировала, а 2011 выпустила 2 версию Java FX. Она была полностью переписана, а ранее используемый скриптовый язык убрали. С тех пор приложения можно было создавать на любом языке, поддерживающем JVM.</p>
13 <p>В сентябре 2021 года вышла JavaFX 17. Это последняя актуальная версия на сегодня. Разработчики часто используют для обучения JavaFX 8 и 9.</p>
13 <p>В сентябре 2021 года вышла JavaFX 17. Это последняя актуальная версия на сегодня. Разработчики часто используют для обучения JavaFX 8 и 9.</p>
14 <p>Сейчас рассматриваемый модуль является предпочтительным способом создания графических приложений на Джаве. Он служит заменой AWT и Swing.</p>
14 <p>Сейчас рассматриваемый модуль является предпочтительным способом создания графических приложений на Джаве. Он служит заменой AWT и Swing.</p>
15 <h2>Сферы применения</h2>
15 <h2>Сферы применения</h2>
16 <p>Данная платформа используется при создании приложений с продвинутым GUI. Программное обеспечение, написанное через технологии JavaFX, получается производительным, надежным и достаточно "легким".</p>
16 <p>Данная платформа используется при создании приложений с продвинутым GUI. Программное обеспечение, написанное через технологии JavaFX, получается производительным, надежным и достаточно "легким".</p>
17 <p>Соответствующий инструмент активно используется в:</p>
17 <p>Соответствующий инструмент активно используется в:</p>
18 <ul><li>IDE;</li>
18 <ul><li>IDE;</li>
19 <li>игровом программном обеспечении;</li>
19 <li>игровом программном обеспечении;</li>
20 <li>редакторах и проигрывателях музыки/видео;</li>
20 <li>редакторах и проигрывателях музыки/видео;</li>
21 <li>графических и текстовых редакторах.</li>
21 <li>графических и текстовых редакторах.</li>
22 </ul><p>Это - основное средство написания десктопных приложений. Некоторые мобильные программы, поддерживающие ПК-версии (Telegram, Skype, WhatsApp и им подобные), тоже работают с данной платформой.</p>
22 </ul><p>Это - основное средство написания десктопных приложений. Некоторые мобильные программы, поддерживающие ПК-версии (Telegram, Skype, WhatsApp и им подобные), тоже работают с данной платформой.</p>
23 <p>При помощи JavaFX пользователи программисты смогут преобразовывать коды в нативные образы, после чего активно использовать на мобильных устройствах. Платформа активно поддерживается встроенными системами, в числе которых находится Raspberry Pi.</p>
23 <p>При помощи JavaFX пользователи программисты смогут преобразовывать коды в нативные образы, после чего активно использовать на мобильных устройствах. Платформа активно поддерживается встроенными системами, в числе которых находится Raspberry Pi.</p>
24 <h2>Что может платформа</h2>
24 <h2>Что может платформа</h2>
25 <p>Рассматриваемый инструмент разработки оснащен впечатляющим пакетом средств программирования для GUI. Вот некоторые функции, с которыми пользователям предстоит иметь дело:</p>
25 <p>Рассматриваемый инструмент разработки оснащен впечатляющим пакетом средств программирования для GUI. Вот некоторые функции, с которыми пользователям предстоит иметь дело:</p>
26 <ul><li>шрифты;</li>
26 <ul><li>шрифты;</li>
27 <li>эффекты;</li>
27 <li>эффекты;</li>
28 <li>анимация;</li>
28 <li>анимация;</li>
29 <li>диаграммы;</li>
29 <li>диаграммы;</li>
30 <li>веб-компоненты;</li>
30 <li>веб-компоненты;</li>
31 <li>управление контейнерами;</li>
31 <li>управление контейнерами;</li>
32 <li>оперирование UI;</li>
32 <li>оперирование UI;</li>
33 <li>макеты;</li>
33 <li>макеты;</li>
34 <li>базовые функции - Stage, FXML, Scene и им подобные.</li>
34 <li>базовые функции - Stage, FXML, Scene и им подобные.</li>
35 </ul><p>Проект оснащен богатой документацией, в которой рассказывается обо всех встроенных модулях, классах и иных элементов платформы. Вся она написана на английском языке. Русскоговорящие пользователи тоже могут найти туториалы и документацию на "родном" языке, но ее значительно меньше.</p>
35 </ul><p>Проект оснащен богатой документацией, в которой рассказывается обо всех встроенных модулях, классах и иных элементов платформы. Вся она написана на английском языке. Русскоговорящие пользователи тоже могут найти туториалы и документацию на "родном" языке, но ее значительно меньше.</p>
36 <h2>Основные плюсы проекта</h2>
36 <h2>Основные плюсы проекта</h2>
37 <p>Задумываясь над использованием JavaFX, необходимо помнить о его преимуществах и возможностях. Данный "пакет" активно применяется разработчиками - не только новичками, но и уже более опытными программистами. Он обладает следующими сильными сторонами:</p>
37 <p>Задумываясь над использованием JavaFX, необходимо помнить о его преимуществах и возможностях. Данный "пакет" активно применяется разработчиками - не только новичками, но и уже более опытными программистами. Он обладает следующими сильными сторонами:</p>
38 <ol><li>Дает возможность писать понятные и управляемые на Java коды. Их удобно не только отслеживать, но и обновлять.</li>
38 <ol><li>Дает возможность писать понятные и управляемые на Java коды. Их удобно не только отслеживать, но и обновлять.</li>
39 <li>Не имеет проблем с кроссплатформенностью и дает возможность формирования нативных образов для мобильных устройств.</li>
39 <li>Не имеет проблем с кроссплатформенностью и дает возможность формирования нативных образов для мобильных устройств.</li>
40 <li>Поддерживает множество библиотек, необходимых для создания GUI.</li>
40 <li>Поддерживает множество библиотек, необходимых для создания GUI.</li>
41 <li>Умеет работать с CSS, а также 2D и 3D-графикой без дополнительных модулей и расширений.</li>
41 <li>Умеет работать с CSS, а также 2D и 3D-графикой без дополнительных модулей и расширений.</li>
42 <li>Поддерживает многопоточность.</li>
42 <li>Поддерживает многопоточность.</li>
43 <li>Обеспечивает разработчика многочисленными готовыми инструментами для создания приложений с "сильной" графикой.</li>
43 <li>Обеспечивает разработчика многочисленными готовыми инструментами для создания приложений с "сильной" графикой.</li>
44 <li>Поддерживается Java-сообществом, благодаря чему разработчики могут получить помощь по любому вопросу, связанному с платформой.</li>
44 <li>Поддерживается Java-сообществом, благодаря чему разработчики могут получить помощь по любому вопросу, связанному с платформой.</li>
45 <li>Регулярные обновления и доработки.</li>
45 <li>Регулярные обновления и доработки.</li>
46 <li>Простое и легкое освоение. Разобраться с JavaFX будет в разы проще разработчикам, которые уже знакомы с Java и ему подобными языками программирования.</li>
46 <li>Простое и легкое освоение. Разобраться с JavaFX будет в разы проще разработчикам, которые уже знакомы с Java и ему подобными языками программирования.</li>
47 <li>Приложение JavaFX, преобразованное в нативный исполняемый файл, будет занимать на порядок меньше пространства на устройстве. Такое программное обеспечение запускается за несколько секунд.</li>
47 <li>Приложение JavaFX, преобразованное в нативный исполняемый файл, будет занимать на порядок меньше пространства на устройстве. Такое программное обеспечение запускается за несколько секунд.</li>
48 </ol><p>Изучать инструмент рекомендуется всем программистам, работающим с Java и ему подобным языкам. Это современная и удобная платформа, которая позволяет выпускает легкие, практичные, детализированные проекты с потрясающими графическими интерфейсами. Она пришла на замену Swing.</p>
48 </ol><p>Изучать инструмент рекомендуется всем программистам, работающим с Java и ему подобным языкам. Это современная и удобная платформа, которая позволяет выпускает легкие, практичные, детализированные проекты с потрясающими графическими интерфейсами. Она пришла на замену Swing.</p>
49 <h2>Сравнение со Swing</h2>
49 <h2>Сравнение со Swing</h2>
50 <p>Swing - технология в Джаве, которая используется для работы с графическими интерфейсами. Она плохо развивалась, поэтому на смену ей пришла платформа JavaFX. Эти две технологии имеют как схожие, так и принципиально различные черты:</p>
50 <p>Swing - технология в Джаве, которая используется для работы с графическими интерфейсами. Она плохо развивалась, поэтому на смену ей пришла платформа JavaFX. Эти две технологии имеют как схожие, так и принципиально различные черты:</p>
51 Java FXSwingИсходный код имеет высокую читабельность. Он является чистым.В программном коде приложения могут встречаться устаревшие модули.Применяется для создания программного обеспечения с насыщенным пользовательским интерфейсом.Используется для работы с обычным GUIИмеет встроенную поддержку MVCНе оснащен возможностью работы с MVCПоддерживается дружелюбным сообществом. Регулярно обновляется и совершенствуется.Новые опции в Swing не добавляются.Поддерживает CSS и встроенный API для многопоточности.Не работает с CSS - стили задаются через программный код. Для многопоточности необходимо устанавливать дополнительные API.Оснащен FXML для декларативного создания макетовНе поддерживает декларативную работу с макетамиРаботает с 3D-графикой по умолчаниюДля работы с трехмерной графикой требуется установка дополнительных плагинов.Поддерживает привязку устройств.Не имеет опций привязки устройств.<p>Swing - технология работы с графикой, которая входит в состав JDK. JavaFX отсоединен от соответствующего "пакета", начиная с Java 11. Официальная поддержка рассмотренной платформы компанией Oracle прекратится в 2025 году, но она все равно будет работать. Обновления для нее будут выпускаться свободными разработчиками.</p>
51 Java FXSwingИсходный код имеет высокую читабельность. Он является чистым.В программном коде приложения могут встречаться устаревшие модули.Применяется для создания программного обеспечения с насыщенным пользовательским интерфейсом.Используется для работы с обычным GUIИмеет встроенную поддержку MVCНе оснащен возможностью работы с MVCПоддерживается дружелюбным сообществом. Регулярно обновляется и совершенствуется.Новые опции в Swing не добавляются.Поддерживает CSS и встроенный API для многопоточности.Не работает с CSS - стили задаются через программный код. Для многопоточности необходимо устанавливать дополнительные API.Оснащен FXML для декларативного создания макетовНе поддерживает декларативную работу с макетамиРаботает с 3D-графикой по умолчаниюДля работы с трехмерной графикой требуется установка дополнительных плагинов.Поддерживает привязку устройств.Не имеет опций привязки устройств.<p>Swing - технология работы с графикой, которая входит в состав JDK. JavaFX отсоединен от соответствующего "пакета", начиная с Java 11. Официальная поддержка рассмотренной платформы компанией Oracle прекратится в 2025 году, но она все равно будет работать. Обновления для нее будут выпускаться свободными разработчиками.</p>
52 <h2>Основные библиотеки</h2>
52 <h2>Основные библиотеки</h2>
53 <p>JavaFX для разработки приложений предусматривает обширный пакет библиотек. Основная их масса доступна для скачивания, но в стандартный пакет включены основные фреймворки. К ним относят:</p>
53 <p>JavaFX для разработки приложений предусматривает обширный пакет библиотек. Основная их масса доступна для скачивания, но в стандартный пакет включены основные фреймворки. К ним относят:</p>
54 <ol><li>JacFX. Библиотека для структурирования приложения через слабо связанные многоразовые компоненты JavaFX. Задачи могут быть независимыми от изменений в пользовательском интерфейсе с клиентской программы. Данный прием позволяет избежать проблем, связанных с многопоточностью. Поддерживает асинхронные процессы, коммуникации на основе шин сообщений.</li>
54 <ol><li>JacFX. Библиотека для структурирования приложения через слабо связанные многоразовые компоненты JavaFX. Задачи могут быть независимыми от изменений в пользовательском интерфейсе с клиентской программы. Данный прием позволяет избежать проблем, связанных с многопоточностью. Поддерживает асинхронные процессы, коммуникации на основе шин сообщений.</li>
55 <li>RichTextFX - инструменты создания текстовых и кодовых редакторов. Такие приложения будут уметь выделять синтаксические элементы и применять разные шрифты.</li>
55 <li>RichTextFX - инструменты создания текстовых и кодовых редакторов. Такие приложения будут уметь выделять синтаксические элементы и применять разные шрифты.</li>
56 <li>Ikonli - модуль для создания кастомных иконок.</li>
56 <li>Ikonli - модуль для создания кастомных иконок.</li>
57 <li>MigLayout - библиотека создания и оперирования макетами.</li>
57 <li>MigLayout - библиотека создания и оперирования макетами.</li>
58 </ol><p>Демо приложения JavaFX можно увидеть<a>здесь</a>. Они наглядно демонстрируют работу основных библиотек и модулей платформы.</p>
58 </ol><p>Демо приложения JavaFX можно увидеть<a>здесь</a>. Они наглядно демонстрируют работу основных библиотек и модулей платформы.</p>
59 <p><a>Интересует Java? Добро пожаловать на курс в Otus</a>!</p>
59 <p><a>Интересует Java? Добро пожаловать на курс в Otus</a>!</p>
60  
60