Описание
Курс является продолжением программы 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%)
Автор и преподаватель курсов по Java, Spring, TypeSript, ReactJS, JavaScript, JavaEE, общий педагогический стаж более 15 лет. Сертифицированный преподаватель Ред Софт,Domino R5 Главный системный администратор, CLP Domino R5 Основной разработчик приложений.
Окончил Уральский Государственный Университет, математико-механический факультет по направлению прикладная математика (системное программирование).
Принимал участие в разработке, внедрении и сопровождении систем автоматизации документооборота на база Lotus Domino\Notes.
Разработал и внедрил более 10 приложений для автоматизации деятельности предприятия.