admin 22 июля 2018

34 крутые видеолекции по JavaFX для начинающих

Если вам нужно создать графическое приложение с мощным визуальным интерфейсом на Java, то JavaFX – то, что вы искали. Давайте перейдем к обучению.

Вводный урок

На первом уроке будет дано определение, что такое JavaFX, для чего используется, и какие аналоги существуют. Вы разберетесь с Rich Internet Application: что это такое, какие приложения могут быть RIA, а также получите документацию и учебные материалы по теме урока.

https://www.youtube.com/watch?v=db2wxZ1yDl8

☕ Подтянуть свои знания по Java вы можете на нашем телеграм-канале «Библиотека Java для собеса»


Примеры

В этом уроке автор предлагает рассмотреть примеры, позволяющие оценить возможности платформы JavaFX, чтобы вы могли понять, как может работать приложение, как запускается браузерный и десктопный вариант. Примеры будут заимствоваться с jfx-wiki и с официального сайта Oracle.

https://www.youtube.com/watch?v=dKIvpVt2hXI

Swing и JavaFX

Третья лекция посвящена пониманию разницы между похожими инструментами: Swing и JavaFX. Из-за того, что JavaFX позиционируется, как замена Swing, в проектах лучше использовать первый инструмент, но и Swing списывать со счетов еще рано. Автор покажет отличительные особенности каждого продукта и плавно подведет к началу практических занятий.

https://www.youtube.com/watch?v=CvmCzZH7frE

Ключевые отличия JavaFX

Еще немного теории, забытой на прошлых уроках. Вы рассмотрите несколько понятных презентаций, которые внесут ясность в некоторые моменты изучения платформы, чтобы четче понимать ее возможности.

https://www.youtube.com/watch?v=9C2VKLAp5LA

Создание программы

В этом уроке вы создадите простейший проект на JavaFX, запустите его и попробуете себя в роли разработчика GUI. Весь интерфейс создается в коде. Программа будет запускаться, как обычный проект, а в качестве IDE используется IntelliJ IDEA.

https://www.youtube.com/watch?v=YdhKqpQ8mDc

Использование FXML

Данный урок является логическим продолжением прошлого, только в этом уроке вы научитесь создавать приложения с использованием FXML. При таком подходе весь пользовательский интерфейс описывается в XML файле, а не в Java-коде.

https://www.youtube.com/watch?v=0uvMOo61uDI

Инструмент Scene Builder

Перед тем, как перейти к следующему этапу обучения, автор предлагает рассмотреть полезный инструмент – Scene Builder. Чтобы не прописывать все теги руками и сразу иметь представление о расположении элементов на экране рассматриваемый инструмент подходит как нельзя кстати.

https://www.youtube.com/watch?v=v96cc7Mk-v0

Дополнение к Scene Builder

Scene Builder показывает информацию во всех средах разработки не совсем корректно. В этой короткой лекции вы узнаете, как правильнее его использовать в реальных проектах.

https://www.youtube.com/watch?v=IreQTCUJHm8

Объекты Stage и Scene

Вы будете постоянно работать с классами stage и scene, поэтому очень важно хорошенько понять значение и назначение этих объектов. Кроме описанных понятий, в этом уроке рассматривается класс Node, понятие SceneGraph и дерево компонентов.

https://www.youtube.com/watch?v=iy808zN9SF0

Использование CSS

В прошлых уроках вы научились создавать пользовательский интерфейс различными способами, а теперь пришло время узнать, как подключать файлы стилей для придания приложению красоты и уникальности.

https://www.youtube.com/watch?v=kwBb8kn1DNo

Обработка событий

В JavaFX обработка событий происходит так же легко, как и в Swing, но знать этот процесс все равно необходимо. Вариантов создания обработчиков много, поэтому на этом уроке рассматриваются самые распространенные из них.

https://www.youtube.com/watch?v=cB3zV3Fn3Bo

Проектирование GUI

Перед тем, как приступить к более насыщенной практике, автор предлагает рассмотреть онлайн сервисы для проектирования GUI в графическом представлении. Вы научитесь создавать макеты будущих приложений в сервисе moqups.

https://www.youtube.com/watch?v=f9pGCDDLReE

Проектирование GUI. Разбор д/з

На прошлом уроке было дано домашнее задание, в котором необходимо нарисовать интерфейс для программы “Адресная книга” в сервисе moqups. Требовалось определиться с выбором компонентов из палитры и организовать хранение данных в коллекции. Эта лекция посвящена разбору домашнего задания.

https://www.youtube.com/watch?v=LJcfXXXecrA

Создание интерфейса

В этом уроке вы узнаете, как импортировать сторонний макет (в нашем случае moqups) в Scene Builder. Автор объясняет, как выбрать правильный компонент для построения GUI и рассказывает о контроле TableView, который используется в проекте.

https://www.youtube.com/watch?v=DsTpMGWHnPU

🧩☕ Интересные задачи по Java для практики можно найти на нашем телеграм-канале «Библиотека задач по Java»


Резиновый макет

На прошлых уроках вы создали свое первое приложение на JavaFX, но его нужно немного модернизировать и добавить резиновый макет для удобства использования на разных девайсах. Для создания резинового макета будет применяться контейнер AnchorPane.

https://www.youtube.com/watch?v=m70kYjeergw

Резиновый макет. Разбор д/з

В конце прошлого урока было выдано новое домашнее задание, направленное на закрепление полученных знаний. Автор в этой лекции покажет, как нужно было выполнить домашнее задание, и разъяснит все по каждому пункту.

https://www.youtube.com/watch?v=Ip5r7UXvID0

Модальные окна

В этом уроке вы узнаете, что такое модальные окна, научитесь использовать объект Node, а также примените вызов модального окна в вашем проекте для редактирования данных.

https://www.youtube.com/watch?v=G3r_HLnzTsc

Аннотация @FXML

Здесь вы узнаете об интересной возможности, которая есть внутри JavaFX – аннотация @FXML. Она позволяет связывать компоненты интерфейса из файла FXML с объектами кода контроллера.

https://www.youtube.com/watch?v=zglC07ZyarI

Аннотация @FXML. Разбор д/з

Для закрепления темы аннотации, в конце предыдущей лекции было выдано домашнее задание, в котором нужно добавить атрибут fx:id для всех компонентов FXML и создать соответствующие объекты в контроллерах. Автор курса показывает, как можно было добиться поставленной цели.

https://www.youtube.com/watch?v=vqEoyInoULc

Проектирование функционала

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

https://www.youtube.com/watch?v=RDErWUAxciA

Проектирование функционала. Разбор д/з

В домашнем задании к этому уроку нужно было создать интерфейс в коде, организовать методы добавления, удаления и изменения данных, а также создать класс Person c нужными полями и геттерами / сеттерами. Автор все доходчиво объясняет.

https://www.youtube.com/watch?v=SnC_jZ6LzQI

Реализация интерфейса

На прошлых уроках вы создавали программный интерфейс, и теперь пришло время его реализовать. В этой лекции, как всегда, будет повторение пройденного материала, создание интерфейса и проверка его работы, а также дебаг работающего проекта.

https://www.youtube.com/watch?v=LeLURS5yzl4

Реализация интерфейса. Разбор д/з

На самостоятельное изучение автор курса выдал вам точки остановки. В качестве практического задания нужно было реализовать методы печати всех записей в консоль и заполнение коллекций тестовыми данными. Все моменты из практики преподаватель разберет на этом уроке.

https://www.youtube.com/watch?v=E5bIu4JCLI8

Отображение данных в таблице

Теперь нужно разобраться, как заполнять таблицу или компонент TableView данными из коллекции. В урок входит рассмотрение других типов коллекций, предусмотренных для работы с TableView, таких как initialize(), ObservableListWrapper и PropertyValueFactory.

https://www.youtube.com/watch?v=eZvRfyiUuBA

Отображение данных в таблице. Разбор д/з

Разбираем домашнее задание. Из четырех задач была одна практическая – реализация слушателя по мануалу из java2s. Автор, как всегда, покажет решение всех задач и сделает акценты на важных нюансах.

https://www.youtube.com/watch?v=79lPfrDodZc

Определение действий пользователя

Для того чтобы узнать какую кнопку нажал пользователь или какую запись в таблице он выбрал, важно понимать механизмы производимых действий. На этом уроке вы узнаете, как определить нажатие кнопки, как получить id компонента и т. д.

https://www.youtube.com/watch?v=aKvrAEJnvIw

Редактирование данных

В этом уроке доработка проекта продолжается, и вы реализуете метод редактирования данных. Также рассмотрите класс StringProperty, научитесь реализовывать автоматическое обновление таблицы.

https://www.youtube.com/watch?v=zMrs_JmtjgI

Редактирование данных. Разбор д/з

Домашнее задание по доработке функционала проекта. Преподаватель реализует удаление и добавление записи, и научит, как сделать так, чтобы по двойному клику открывалось окно редактирования.

https://www.youtube.com/watch?v=t9cC7GPSDWk

Локализация приложения

В этом уроке вы разберетесь, как добавить возможность поддержки нескольких языков приложения. Рассмотрите понятия internationalization, localization и globalization. Научитесь добавлять в проект переводы, объекты Locale и переключение языка.

https://www.youtube.com/watch?v=yRuxgCyXg8E

Локализация приложения. Разбор д/з

В домашнем задании прошлого урока вам нужно было прочитать дополнительный материал про объекты Locale, файлы локализации Scene Builder и массу документации по среде IDEA. В качестве практики – сделать перевод компонентов и импортировать его в проект.

https://www.youtube.com/watch?v=bFpSalZfvxU

Сторонние библиотеки компонентов

Эта лекция научит вас подключать дополнительные библиотеки компонентов. Данные дополнения важны в реальных проектах т. к. довольно часто решить задачу стандартными способами не представляется возможным.

https://www.youtube.com/watch?v=_J1QEQEWKSo

Сторонние библиотеки компонентов. Разбор д/з

В конце прошлого урока автор дал задание подключить библиотеки ControlsFX для функционирования поиска. Нужно было использовать компонент CustomTextField для очистки поля. В ролике вы увидите вариант реализации этого задания.

https://www.youtube.com/watch?v=V9pdymwapsA

Диалоговые окна

В этой лекции вы узнаете, как добавить .jar-файл, выводящий на экран диалоговые окна в вашем приложении. Это дополнение может показывать сообщения пользователям, если произошла ошибка при вводе или проблема с данными.

https://www.youtube.com/watch?v=tNvfqaWRauU

Переключение локали

В последнем видео курса вы реализуете динамическое переключение локали, чтобы одновременно с этим изменялись все надписи графического интерфейса в зависимости от выбранного языка.

https://www.youtube.com/watch?v=o62WN1cKe34

Другие материалы по теме:

Комментарии

ВАКАНСИИ

Добавить вакансию
Разработчик C++
Москва, по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ