JavaFX для начинающих

Создание графических приложений на Java

Исходные коды обновлены: апрель 2019 г.

Нужно ли вам изучать JavaFX

Обычно новички пытаются сразу перейти в раздел веб разработки или Android, т.к. это более актуально и престижно.

Но тем самым допускают ошибку - у них мало практики по основам Java, ООП, базам данных.

Чтобы закрыть этот пробел - вы можете создавать графические JavaFX приложения.

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

 

Вам не нужно досконально изучать каждый раздел JavaFX (если конечно не требуется по работе или проекту). Достаточно понять событийную модель и основные компоненты - этого будет достаточно, чтобы создавать программы средней сложности, работающие с БД.

 

Красивые desktop приложения

Многие программисты жаловались, что desktop приложения на Java получаются некрасивыми и не такими интерактивными, как хотелось бы.

Тогда разработчики языка Java придумали новый фреймворк JavaFX, где исправили все недостатки и добавили новые возможности.

Теперь вы сможете создавать красивые и интерактивные desktop приложения и не стыдиться своего результата.

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

Это действительно один из популярных вариантов по созданию насыщенных настольных Java приложений. 

JavaFX - это новое направление, которое позволит вам создавать красивые desktop приложения на Java

Чем JavaFX отличается от Swing?

Основное отличие - в удобстве и возможностях JavaFX по сравнению с Swing. Теперь вы можете использовать концепцию разделения внешнего вида от функционала (идея MVC - Model View Controller).

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

Здесь же все намного проще. Поэтому многие разработчики не задумываясь переходят с Swing на JavaFX.

Означает ли это, что Swing можно забыть?

 

Нет, вы можете использовать Swing совместно с JavaFX (особенно это нужно для старых проектов для более плавного перехода).

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

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

 
Видеоуроки

Каждый урок выполнен в формате видео, которое можно переносить на разные устройства и пересматривать в любом месте

Готовые исходные коды

Обучайтесь на готовых примерах - открывайте исходные коды по всем урокам и заданиям, запускайте в IntelliJ IDEA

Задания с решениями

Закрепление по всем пройденным темам уроков - выполняйте домашние задания и сравнивайте полученный результат

Основные темы уроков

Основы построения графического интерфейса
  • Проектирование GUI
  • Структура приложения JavaFX
  • Создание интерфейса 
  • Резиновый макет
  • Модальные окна
  • Инструмент SceneBuilder
  • Объекты Stage и Scene
  • Использование CSS
  • Модальные окна
  • Использование FXML
  • Создание макетов
  • Дерево элементов
Контроллеры, действия пользователя
  • Обработка событий
  • Отображение данных в таблице
  • Редактирование данных
  • Аннотация FXML
  • Использование ObservableList
  • Инициализация компонентов
  • Оптимизация UI
  • Библиотека openjfx-dialogs
  • Валидация данных
  • Класс StringProperty
Кастомизация, локализация, добавление компонентов
  • Локализация приложения
  • Сторонние библиотеки компонентов
  • Переключение локали
  • Сравнение Swing и JavaFX
  • Плюсы и минусы
  • Примеры приложений
  • Использование Locale
  • i18n и i10n
  • Создание своих компонентов
  • Использование шаблона Observer
 
Работа с БД из JavaFX приложения
  • Проектирование таблицы БД
  • Заполнение таблицы из БД
  • Изменение, добавление, удаление данных
  • Поиск данных
  • Автоматические обновление
  • Модальные окна для редактирования
  • Выполнение SQL запросов
  • Переключение реализаций ООП
  • Добавление абстракного слоя
Стилизация и добавление дизайна
  • Изменение дизайна приложения
  • Разбор структуры компонентов
  • Использование CSS
  • Отладка внешнего вида
  • Работа с селекторами CSS
  • Изменение стандартных компонентов
  • Разделение UI и дизайна

Сравните 2 реализации одной задачи

Реализация на Swing

Здесь применяются "стандартные" технологии, ограниченные по возможностям и красоте. Из-за чего все desktop приложения Java выглядят страшновато.
Сейчас многие активное пересаживаются со Swing на другие решения, т.к. постоянно упираются в потолок из-за ограниченности и "деревянности" приложений.

Feature Image
Feature Image

Реализация на JavaFX

JavaFX - новое слово в развитие desktop приложений на Java: новые библиотеки, украшения и скины. Технология позволяет разнообразить внешний вид на любой вкус. Ваши приложения больше не будут выглядеть древними.

* Исходный код этого MP3 плеера с видеообзором вы также получите в виде бонуса к курсу


Чему вы научитесь

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

Создадите проект для закрепления.

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

Среда разработки

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

IDEA хорошо поддерживает JavaFX даже в бесплатной версии.

Feature Image

Какое приложение вы разработаете с нуля?

  • Адресная книга
    Image
    Адресная книга

    После изучения основ JavaFX (построение интерфейса, компоненты, связывание с кодом) вы разработаете первый проект "Адресная книга" - для закрепления всех полученных знаний.

    Что вы будете практиковать:
    - работа с компонентами
    - редактирование, удаление, добавление
    - использование сторонних компонентов
    - связывание контроллеров, GUI, компонентов
    - диалоговые окна, валидации
    - заполнение таблицы с помощью специальных классов
    - применение принципов ООП
    и многое другое...

Блок
Основы JavaFX
Блок
JavaFX + БД
Блок
JavaFX + CSS

Бонусный урок для
самостоятельного изучения

Feature Image

 

По просьбам читателей - в качестве бонуса вы также получите исходный код по MP3 плееру (сторонняя, не наша разработка) для углубленного изучения.

Это не полный пошаговый разбор проекта, а обзор исходного кода в IntelliJ IDEA + видеоурок по основным моментам.

Основной проект курса - "Адресная книга" (наша разработка), на нем вы будете изучать все возможности JavaFX.

 

Скриншоты из уроков

Отзывы учеников на курсы

Об авторе

 

Тимур Батыршинов: 33 года, Java разработчик, опыт более 14 лет, основатель javabegin.ru

Главный тренер. За 7 лет обучил более 46000 человек (онлайн и оффлайн)

Автор более 50 курсов по разным направлениям Java: основы, веб, Android, Spring и многие другие.

 

Поддержка по вашим вопросам

 

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

Вопросы читателей

Какие нужны начальные знания?

Для изучения данного курса у вас должны быть хорошие знания всех основ Java, а именно: синтаксис, коллекции, ООП, Swing, БД, JDBC, SQL.

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

Эти темы вы можете пройти в курсах:
"Профессиональное применение ООП в Java"
"Разработка MP3 плеера на Swing"
"Базы данных в Java"

 

Запустится ли курс на MacOS/Linux?

Да, вы сможете работать с любой ОС: Windows, MacOS, Linux и пр.

Принципы работы одинаковые: для навигации по урокам вы будете использовать HTML меню, которое работает во всех браузерах.

 

Каким способом можно оплатить курс?

Поддерживаются все способы оплаты: картами, электронными кошельками, через банк наличными и многие другие.

Подробнее можно посмотреть ниже на этой странице.

Сколько времени нужно на изучение курса?

Примерно 2-3 недели, в зависимости от интенсивности. В день уходит в среднем уходит около 2-3 часов.

Самое главное - выполнять практические задания самостоятельно, по крайней мере стараться.

 

Как оплатить в другой валюте? (доллары, евро, гривны, тенге и пр.)

Если оплачиваете онлайн платежом (картой или электронного кошелька) или через банк - то конвертация происходит автоматически по курсу вашего банка.

Если оплачиваете наличными (через банкомат или терминал) - нужно выполнить конвертацию самостоятельно. Подробная инструкция находится в способах оплаты.

 

Можно купить один комплект, а позже доплатить за другой?

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

Примерно на 30-40% процентов.

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

Куда можно будет задавать вопросы?

У вас будет возможность задавать вопросы в специальную закрытую группу (смотрите по комплектам), где будут отвечать как другие читатели, так и автор курса.

 

В какой IDE будем работать?

В данном курсе вы будете работать в IntelliJ IDEA (хотя проекты можно открывать в любой IDE).

 

Буду ли я получать обновления по курсу (бонусные уроки)?

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

 

Можно ли купить курс и начать его изучение позже?

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

 

В курсе уже есть исходные коды?

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

 

Можно открывать проекты в другой IDE?

Можно, для этого нужно выполнять "Import вместе с иходными файлами" для соответствующей IDE. Как это правильно делать - смотрите в документации по вашей IDE.

 

 

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

 

Стоимость

Исходные коды обновлены: апрель 2019 г.

(посмотреть интерактивную ДЕМО версию курса)

Блок
Основы JavaFX
Блок
JavaFX + БД
Блок
JavaFX + CSS
 

Минимум

2400 р

  • Видеоуроки
  • Исходные коды
  • Файлы PDF

Стандарт

2900 р

Расширенный

3400 р

Все включено

5400 р

Объем: ~ 1,4 Гб

Доступные способы оплаты

Картой VISA, MasterCard (онлайн оплата)

Платежная система Webmoney (онлайн оплата)

Платежная система Яндекс.Деньги (онлайн оплата)

Платежная система QIWI (онлайн оплата или через любой терминал)

Платежная система Paypal (онлайн оплата)

"Сбербанк Онлайн" или "Тинькофф Кредитные системы"(онлайн оплата)

Приват24(онлайн оплата)

Казком или с любой карты Казахстана(онлайн оплата или наличными через банкомат, банк)

Денежные переводы через системы: (наличными через банк)

Салоны связи (наличными)

Любой банкомат "Сбербанка" (наличными)

Безнал. расчёт для физ. и юр. лиц (наличными через банк)

 

P.S. Не нашли подходящий способ оплаты? Напишите нам