Описание
Курс является продолжением программы JVA-007, и в нем рассматриваются наиболее важные из используемых в настоящее время функций (включая Java 8).Слушатели смогут работать с основными классами Java, научатся использовать многопоточность (как на уровне основных механизмов, так и на уровне библиотеки java.util.concurrent) и механизмы Refelction, определять и использовать аннотации, логирование в программах, а также применять наиболее важные возможности Java 8 (лямбда-выражения, ссылки на методы, потоки, новые Date и Time API и т.д.).
удостоверение о повышении квалификации государственного образца
Цели
- использовать в приложениях ключевые классы системной библиотеки: System, Math, Object, строки, обертки (wrappers);
- работать с вводом-выводом из приложений;
- управлять в приложениях потоками (threads);
- работать со стандартными классами коллекций;
- использовать механизм Reflection;
- использовать в приложениях аннотации;
- использовать в приложениях лямбды Java 8;
- использовать в приложениях потоки Java 8;
- работать с Java 8 Date и Time API.
Целевая аудитория
- Младшие разработчики Java, владеющих синтаксисом Java и ООП (или прослушавших курс JVA-007)
- Средние разработчики Java, желающие структурировать свои знания стандартных библиотек JDK (I/O, коллекции, многопоточность, потоки данных и т.д.).
Предварительная подготовка
Разбираемые темы
-
1. Системные классы в Java
-
Введение
-
Классы System, Math и Object
-
Строки
-
Классы StringBuffer и StringBuilder
-
Примитивные оболочки
-
Автоупаковка и автораспаковка
-
Работа с регулярными выражениями
- Класс Properties и работа с файлами свойств
-
-
2. Ввод/вывод в Java
-
Файловый ввод – вывод
-
Прямой доступ к файлам
-
Потоки данных
-
Низкоуровневые и высокоуровневые потоки
-
Сцепление потоков
-
Обработка исключений в потоках В/В
-
Reader- и Writer-потоки
-
Сериализация и десериализация объектов
-
Объекты класса System out, in, err. Класс PrintStream
-
Форматирование выходных данных
-
-
3. Многопоточность в Java
- Понятие многопоточности
-
4. Многопоточность: пакет java.util.concurrent
-
5. Фреймворк Java Collections
-
Введение
-
Основные интерфейсы Коллекции
-
-
6. Использование рефлексивного API в Java
-
Введение
-
Интроспекция класса
-
-
7. Аннотации
-
Понятие аннотации
-
Использование аннотаций
-
-
8. Лямбда-выражения в Java 8
-
Введение в «лямбда-выражения»
-
Функциональные интерфейсы. Ссылки на метод
-
-
9. Стримы данных и коллекторы. Новые API для map/filter/reduce
-
Стримы данных
-
Понятия map / filter / reduce
-
Мэппинг потоков
-
Агрегирование и редукция
-
Коллекторы
-
Специализированные потоки
-
-
10. API даты и времени в Java 8. Дополнение к основным API Java
-
Для чего нужен новый Java Date/ime API?
-
Проблемы с получением даты в Java 7
-
Принципы проектирования нового Date и Time API
-
Классы Date Time в Java 8
-
Enums
-
Period и Duration: Представление временных различий
-
Утилиты Date API
-
Корректировщики времени
-
-
Итого: теория – 14,5 ч (36%), практика – 25,5 ч (64%)