Создание сложного проекта
в профессиональном стиле
Практическое задание для новичков, чтобы закрепить
основы Java:
ООП, коллекции и т.д. (проект основан на Swing)
Реализация собственного MP3 плеера
(Исходные коды обновлены: апрель 2019 г.)
Зачем нужно знать SWING?
Очень частый вопрос, который можно услышать от начинающих программистов.
Многие уверены, что на SWING не нужно тратить время, т.к. он скоро "вымрет" и т.д.
На самом деле любому начинающему программисту Java обязательно нужно знать хотя бы на среднем уровне как использовать библиотеки SWING.
Многие элементы архитектуры SWING (слушатели событий, паттерн MVC) используются в современных направлениях (JavaEE, веб программирование, Android и др.)
Практика для новичков
Чаще всего многие новички пытаются быстро перейти в сторону веб разработки, чтобы получить полноценную практику.
Но не у всех это получается, потому что нужно еще хорошо выучить саму веб разработку.
А это не так-то просто. Поэтому начинающие разработчики останавливаются на полпути.
Самый правильный вариант - попрактиковаться на простых приложениях, но не консольных, а графических.
Swing для этого подходит идеально, т.к. работать с ним довольно легко и основы можно понять за пару вечеров.
Вы можете получить необходимый опыт при минимальных требованиях.
К тому же создавать кнопочные приложения намного интереснее, чем просто консольные.
Поэтому советую вам в первую очередь попрактиковать ООП и закрепить синтаксис Java на примере MP3 плеера.
"Создание MP3 плеера на SWING"
Вы получите знания по основным моментам библиотеки SWING. Я поделюсь всеми своими рекомендациями при построении графических компонентов.
На практике начнем с простого калькулятора, а финальным заданием будет разработка MP3 плеера, который вы сможете дорабатывать в свое удовольствие после окончания тренинга.
Видеоуроки
Каждый урок выполнен в формате видео, которое можно переносить на разные устройства и пересматривать в любом месте
Готовые исходные коды
Обучайтесь на готовых примерах - открывайте исходные коды по всем урокам и заданиям, запускайте в IntelliJ IDEA
Задания с решениями
Закрепление по всем пройденным темам уроков - выполняйте домашние задания и сравнивайте полученный результат
Основные темы уроков
- Компоненты SWING
- Создание фреймов
- Концепция JavaBeans
- Контейнеры
- Скины (внешний вид программы)
- Подключение библиотек в свой проект
- Менеджеры расположения (layout managers)
- Слушатели событий (listeners)
- Адаптеры
- Jar файлы
- Разработка калькулятора
- Технология Java Web Start
- Дизайнер интерфейса в NetBeans
- Использование Java консоли для определения ошибок
- Апплеты
- Массивы
- Коллекции
- Работа с файловой системой
- Чтение и запись файлов
- Обработка исключительных ситуаций
- Архитектура Model-Viewer-Controller (MVC)
- Разработка собственного MP3 плеера
- Использование моделей компонентов
Отдельный блок: рефакторинг кода в ООП стиль
В начале вы создадите релизацию, которая "просто будет работать". Но чтобы реализовать код профессионально - вы выполните рефакторинг кода.
Т.е. измените внутреннюю реализацию, без изменения функционала.
Ваш код станет более ООП-шным и расширяемым.
Это очень важный навык - умение "причесать" и оптимизировать любой код.
Сериализация и работа с файловой системой
Для успешной реализации MP3 плеера вы также научитесь двум важным навыкам: сериализация объектов и работа с файлами.
Это нужно для того, чтобы работать с плейлистом, сохранять список песен в формате *.pls.
Затем сможете открывать этот файл и восстанавливать список mp3 файлов для прослушивания.
Какое приложение вы разработаете с нуля?
-
MP3 плеер
Основной функционал MP3 плеера.
- добавление mp3 файлов
- сохранение и открытие готового плейлиста
- управление проигрыванием (стоп, пауза, перемотка, звук)
- работа с плейлистом: добавление, удаление, перемещение
- поиск композиций
и многое другое...
Среда разработки
Изначально уроки записаны с использованием IDE NetBeans. Но вы можете открывать их в любой IDE, т.к. это стандартный JavaSE. Нет привязки к фреймворкам или другим ресурсам. Понадобится только подключение jar-библиотек.
К тому же, в NetBeans самый удобный визуальный редактор для Swing.
IntelliJ IDEA
Проекты также можно открывать в IntelliJ IDEA. Можно использовать Community Edition (бесплатная версия). Отличия в от NetBeans - здесь менее удобный редактор Swing.
Об авторе
Тимур Батыршинов: 33 года, Java разработчик, опыт более 14 лет, основатель javabegin.ru Главный тренер. За 7 лет обучил более 46000 человек (онлайн и оффлайн) Автор более 50 курсов по разным направлениям Java: основы, веб, Android, Spring и многие другие. |
Отзывы учеников на курсы
Поддержка по вашим вопросам
Если у вас возникнут вопросы - вы всегда сможете их задать в закрытой группе форума, куда есть доступ только у клиентов. Вы не останетесь один на один с проблемами, поэтому сможете постоянно двигаться вперед.
Вопросы читателей
Какие нужны начальные знания?
|
Запустится ли курс на MacOS/Linux?
|
Каким способом можно оплатить курс?
|
Сколько времени нужно на изучение курса?
|
Как оплатить в другой валюте? (доллары, евро, гривны, тенге и пр.)
|
Можно купить один комплект, а позже доплатить за другой?
|
Куда можно будет задавать вопросы?
|
В какой IDE будем работать?
|
Буду ли я получать обновления по курсу (бонусные уроки)?
|
Можно ли купить курс и начать его изучение позже?
|
В курсе уже есть исходные коды?
|
Можно открывать проекты в другой IDE?
|
Все вопросы также можете задавать в онлайн чате в правом нижнем углу страницы.
Стоимость
Исходные коды обновлены: апрель 2019 г.
Доступные способы оплаты
Картой VISA, MasterCard (онлайн оплата)
Платежная система Webmoney (онлайн оплата)
Платежная система Яндекс.Деньги (онлайн оплата)
Платежная система QIWI (онлайн оплата или через любой терминал)
Платежная система Paypal (онлайн оплата)
"Сбербанк Онлайн" или "Тинькофф Кредитные системы"(онлайн оплата)
Приват24(онлайн оплата)
Казком или с любой карты Казахстана(онлайн оплата или наличными через банкомат, банк)
Денежные переводы через системы: (наличными через банк)
Салоны связи (наличными)
Любой банкомат "Сбербанка" (наличными)
Безнал. расчёт для физ. и юр. лиц (наличными через банк)
P.S. Не нашли подходящий способ оплаты? Напишите нам