Содержание курса
1. Intro + рекомендации к методике подготовки
5 уроков
36
36
59м
1
Открытый
1.1
Почему сертификация --- это лучший подарок самому себе
↗
8
8
21м 16с
0
Открытый
1.2
Введение
↗
7
7
3м 5с
0
Открытый
1.3
Рекомендации
↗
7
7
29м 46с
1
Открытый
1.4
Подготовка учебной среды (апдейт для 2025)
↗
7
7
6м 52с
0
Закрытый
1.5
Кодовая база, слайды, диаграммы, практич.задачи и т.д.
↗
7
7
-
0
2. Тематические группы 1 & 2: Базовый и продвинутый дизайн классов
9 уроков
64
62
175м
0
Открытый
2.1
Ключевое слово final
↗
9
9
19м 51с
0
Открытый
2.2
Наследование и полиморфизм
↗
7
7
35м 16с
0
Открытый
2.3
Перечисляемые дата-типы (enums)
↗
12
12
25м 40с
0
Открытый
2.4
Внутренние классы
↗
7
7
13м 42с
0
Открытый
2.5
Шаблон Singleton
↗
6
6
14м 30с
0
Открытый
2.6
Немутирующие классы
↗
6
4
13м 28с
0
Открытый
2.7
Интерфейсы
↗
6
6
26м 11с
0
Открытый
2.8
Лямбда-выражения
↗
5
5
17м 38с
0
Открытый
2.9
Важный --- даже ГИПЕРВАЖНЫЙ --- комментарий
↗
6
6
13м 29с
0
3. Тематическая группа 3: Generics и коллекции
22 урока
38
38
341м
0
Закрытый
3.1
Введение
↗
4
4
25м 56с
0
Закрытый
3.2
Параметризация
↗
4
4
25м 21с
0
Закрытый
3.3
Пределы ? extends и ? super
↗
4
4
18м 12с
0
Закрытый
3.4
Подробнее про extends и super
↗
3
3
28м 45с
0
Закрытый
3.5
Интерфейсные пересечения
↗
3
3
9м 19с
0
Закрытый
3.6
Ограниченность дженериков
↗
1
1
22м 2с
0
Закрытый
3.7
Обзор коллекций в Java
↗
1
1
26м 49с
0
Закрытый
3.8
Lists (списки)
↗
2
2
22м 40с
0
Закрытый
3.9
Sets (множества)
↗
1
1
21м 13с
0
Закрытый
3.10
Утечка памяти из-за equals()
↗
1
1
8м 25с
0
Закрытый
3.11
Класс TreeSet
↗
2
2
11м 20с
0
Закрытый
3.12
Maps (отображения, «мапы»)
↗
1
1
3м 9с
0
Закрытый
3.13
Queues (очереди)
↗
1
1
8м 23с
0
Закрытый
3.14
Упорядоченные коллекции
↗
1
1
7м 7с
0
Закрытый
3.15
Асимптотическая сложность и ее последствия
↗
1
1
11м 25с
0
Закрытый
3.16
Неуместная структура данных (пример с Java Mission Control)
↗
1
1
6м 54с
0
Закрытый
3.17
Как выполнять сортировку
↗
2
2
10м 38с
0
Закрытый
3.18
Естественный порядок
↗
1
1
24м 36с
0
Закрытый
3.19
Подробнее об упорядочении
↗
1
1
15м 38с
0
Закрытый
3.20
Аккуратней с компаратором!
↗
1
1
11м 1с
0
Закрытый
3.21
Сортировка: подведем итоги разбора
↗
1
1
12м 5с
0
Закрытый
3.22
И еще разок про параметризацию с extends
↗
1
1
18м 8с
0
4. Тематические группы 4 & 5: Встроенные функц.интерфейсы и Stream
20 уроков
21
21
261м
0
Закрытый
4.1
Введение
↗
1
1
23м 13с
0
Закрытый
4.2
«Универсальный анализатор» на лямбдах
↗
1
1
18м 39с
0
Закрытый
4.3
Пакет java.util.function
↗
1
1
10м 0с
0
Закрытый
4.4
Что такое Stream
↗
1
1
9м 17с
0
Закрытый
4.5
Метод map()
↗
1
1
4м 3с
0
Закрытый
4.6
Метод peek() и «короткозамыкающие» операторы
↗
2
2
6м 55с
0
Закрытый
4.7
Класс Optional
↗
1
1
16м 39с
0
Закрытый
4.8
Методы для обработки данных
↗
1
1
8м 3с
0
Закрытый
4.9
Класс Collectors
↗
1
1
10м 32с
0
Закрытый
4.10
Источники
↗
1
1
18м 40с
0
Закрытый
4.11
Метод flatMap()
↗
1
1
27м 21с
0
Закрытый
4.12
Специфика обработки данных в функц.конвейерах
↗
1
1
9м 52с
0
Закрытый
4.13
Параллельные стримы
↗
1
1
6м 54с
0
Закрытый
4.14
«Подводные камни»
↗
1
1
6м 26с
0
Закрытый
4.15
Понятие statefulness
↗
1
1
11м 41с
0
Закрытый
4.16
Редукция и ее особенности
↗
1
1
24м 36с
0
Закрытый
4.17
Пример «высушивания» кода на стримах: UniMaxDemo
↗
1
1
11м 6с
0
Закрытый
4.18
Как сделать distinct() более «разборчивым»
↗
1
1
19м 37с
0
Закрытый
4.19
Сегментация данных с помощью partitioningBy()
↗
1
1
9м 7с
0
Закрытый
4.20
Классификация данных с помощью groupingBy()
↗
1
1
18м 15с
0
5. Кодовый практикум к разделу про ФП
1 урок
1
1
58м
0
Закрытый
5.1
Лямбда-трейдеры
↗
1
1
58м 37с
0
6. Факультативные топики к разделу про ФП
3 урока
3
3
105м
0
Закрытый
6.1
Динамические лямбды
↗
1
1
26м 13с
0
Закрытый
6.2
Каррированные функции
↗
1
1
14м 29с
0
Закрытый
6.3
Глубокое погружение в ссылки на методы
↗
1
1
64м 19с
0
7. Тренировочные вопросы: Тематические Группы 1 – 5
5 уроков
6
5
203м
0
Закрытый
7.1
Разбор тренировочных вопросов по Группе 1
↗
1
1
42м 36с
0
Закрытый
7.2
Разбор тренировочных вопросов по Группе 2
↗
1
1
30м 55с
0
Закрытый
7.3
Разбор тренировочных вопросов по Группе 3
↗
2
1
48м 4с
0
Закрытый
7.4
Разбор тренировочных вопросов по Группе 4
↗
1
1
41м 0с
0
Закрытый
7.5
Разбор тренировочных вопросов по Группе 5
↗
1
1
42м 8с
0
8. Тематическая группа 6: Assertions и обработка исключений
3 урока
5
4
129м
0
Закрытый
8.1
Обработка исключений и ключевое слово assert
↗
2
1
61м 5с
0
Закрытый
8.2
(Факультативно) Видеолекция по обработке исключений из OCA-курса
↗
2
2
37м 14с
0
Закрытый
8.3
Разбор тренировочных вопросов по Группе 6
↗
1
1
31м 32с
0
9. Тематическая группа 7: Date / Time API
3 урока
5
4
94м
0
Закрытый
9.1
Хроноклассы в пакете java.time
↗
2
1
61м 15с
0
Закрытый
9.2
(Факультативно) Видеолекция по хроноклассам из OCA-курса
↗
2
2
13м 42с
0
Закрытый
9.3
Разбор тренировочных вопросов по Группе 7
↗
1
1
20м 15с
0
10. Тематическая группа 8: Многопоточность
47 уроков
53
52
380м
0
Закрытый
10.1
Архитектура фон Неймана
↗
3
3
8м 35с
0
Закрытый
10.2
Пользовательские процессы
↗
2
2
11м 53с
0
Закрытый
10.3
Оценка потребного размера ОЗУ
↗
2
1
10м 38с
0
Закрытый
10.4
Процессы и их роли
↗
1
1
5м 3с
0
Закрытый
10.5
Сегменты памяти
↗
1
1
5м 21с
0
Закрытый
10.6
Знакомство с подпроцессами (threads)
↗
1
1
6м 48с
0
Закрытый
10.7
Подпроцессы пользователя и ОС
↗
1
1
8м 41с
0
Закрытый
10.8
Сходства и отличия процессов и подпроцессов
↗
1
1
4м 50с
0
Закрытый
10.9
Что может пойти не так
↗
1
1
5м 47с
0
Закрытый
10.10
Мониторы
↗
1
1
5м 47с
0
Закрытый
10.11
Синхронизирующие абстрации
↗
1
1
3м 1с
0
Закрытый
10.12
Создание подпроцесса
↗
1
1
6м 26с
0
Закрытый
10.13
Состояния подпроцесса
↗
1
1
10м 31с
0
Закрытый
10.14
Приоритет подпроцесса
↗
1
1
6м 21с
0
Закрытый
10.15
Метод join()
↗
1
1
5м 38с
0
Закрытый
10.16
Метод interrupt()
↗
1
1
2м 21с
0
Закрытый
10.17
Связка wait() и notify()
↗
1
1
10м 51с
0
Закрытый
10.18
Ключевое слово volatile
↗
1
1
4м 23с
0
Закрытый
10.19
Что стоит за volatile
↗
1
1
16м 38с
0
Закрытый
10.20
Ключевое слово synchronized
↗
1
1
7м 25с
0
Закрытый
10.21
Блоки синхронизации
↗
1
1
3м 47с
0
Закрытый
10.22
Статическая блокировка (deadlock)
↗
1
1
8м 58с
0
Закрытый
10.23
Счетчик с монитором
↗
1
1
14м 27с
0
Закрытый
10.24
Интерфейс Lock
↗
1
1
4м 14с
0
Закрытый
10.25
Класс ReentrantLock
↗
1
1
9м 32с
0
Закрытый
10.26
Атомарный счетчик
↗
1
1
3м 48с
0
Закрытый
10.27
Паттерн Producer-Consumer на связке wait/notify
↗
1
1
3м 43с
0
Закрытый
10.28
С Новым годом! на связке wait/notify
↗
1
1
28м 47с
0
Закрытый
10.29
Паттерн Producer-Consumer на связке Lock/Condition
↗
1
1
2м 56с
0
Закрытый
10.30
ExecutorService с Runnable
↗
2
2
6м 5с
0
Закрытый
10.31
ExecutorService с Semaphore
↗
1
1
4м 52с
0
Закрытый
10.32
ExecutorService с Callable
↗
1
1
4м 46с
0
Закрытый
10.33
ExecutorService и метод awaitTermination()
↗
1
1
6м 11с
0
Закрытый
10.34
Класс CyclicBarrier
↗
1
1
2м 30с
0
Закрытый
10.35
CyclicBarrier в действии
↗
1
1
2м 59с
0
Закрытый
10.36
Фреймворк Fork/Join
↗
1
1
9м 7с
0
Закрытый
10.37
Рекурсия: top-down и bottom-up
↗
1
1
12м 18с
0
Закрытый
10.38
Рекурсия: пример доказательства по индукции
↗
2
2
9м 7с
0
Закрытый
10.39
Рекурсивное вычисление площади
↗
1
1
8м 44с
0
Закрытый
10.40
Простейший пример с Fork/Join
↗
1
1
5м 54с
0
Закрытый
10.41
Бенчмаркинг суммирования на Fork/Join
↗
1
1
9м 34с
0
Закрытый
10.42
ЭКСТРА: Concurrent, multithreaded и parallel
↗
1
1
7м 56с
0
Закрытый
10.43
ЭКСТРА: Race Conditions и Data Races
↗
1
1
10м 42с
0
Закрытый
10.44
ЭКСТРА: Состояние гонки в бинарных семафорах и мьютексах
↗
1
1
16м 20с
0
Закрытый
10.45
ЭКСТРА: Liveness и синхронизация
↗
1
1
20м 42с
0
Закрытый
10.46
ЭКСТРА: Знакомство с виртуальными подпроцессами
↗
1
1
4м 22с
0
Закрытый
10.47
Разбор тренировочных вопросов по Группе 8
↗
1
1
39м 49с
0
11. Тематические группы 9 & 10: IO и NIO.2
31 урок
31
31
218м
0
Закрытый
11.1
Механизмы ввода/вывода в Java: базовые концепции
↗
1
1
5м 23с
0
Закрытый
11.2
Входные и выходные потоки данных
↗
1
1
12м 6с
0
Закрытый
11.3
Класс File
↗
1
1
7м 11с
0
Закрытый
11.4
Примеры использования File-объекта
↗
1
1
9м 41с
0
Закрытый
11.5
Класс FileInputStream
↗
1
1
8м 44с
0
Закрытый
11.6
Упражняемся с FileInput/OutputStream
↗
1
1
3м 11с
0
Закрытый
11.7
Класс FilterInputStream
↗
1
1
10м 25с
0
Закрытый
11.8
Маркировка
↗
1
1
5м 34с
0
Закрытый
11.9
«Перескок» (skipping over)
↗
1
1
3м 9с
0
Закрытый
11.10
Буферизованные потоки
↗
1
1
5м 16с
0
Закрытый
11.11
Класс DataInput/OutputStream
↗
1
1
5м 44с
0
Закрытый
11.12
Readers и Writers
↗
1
1
5м 19с
0
Закрытый
11.13
Упражняемся с BufferedReader/Writer
↗
1
1
6м 51с
0
Закрытый
11.14
Классы PrintStream и PrintWriter
↗
1
1
4м 31с
0
Закрытый
11.15
Понятие «персистентность»
↗
1
1
2м 58с
0
Закрытый
11.16
Пример простейшей сериализации
↗
1
1
6м 37с
0
Закрытый
11.17
Почему персистентность нужна
↗
1
1
3м 50с
0
Закрытый
11.18
Требования к сериализуемому классу
↗
1
1
8м 55с
0
Закрытый
11.19
Ключевое слово transient
↗
1
1
8м 34с
0
Закрытый
11.20
Что такое SerialVersionUID
↗
1
1
4м 35с
0
Закрытый
11.21
Пример полного цикла персистирования
↗
1
1
9м 4с
0
Закрытый
11.22
Взаимодействие с пользователем
↗
1
1
5м 12с
0
Закрытый
11.23
Пользовательский ввод на новый лад
↗
1
1
4м 33с
0
Закрытый
11.24
Как украсть пароль
↗
1
1
11м 55с
0
Закрытый
11.25
NIO.2: базовые концепции
↗
1
1
12м 40с
0
Закрытый
11.26
Интерфейс Path
↗
1
1
4м 38с
0
Закрытый
11.27
Методы resolve(), relativize() и normalize()
↗
1
1
7м 15с
0
Закрытый
11.28
Симлинки в NIO.2
↗
1
1
6м 26с
0
Закрытый
11.29
Манипуляции с файлами и директориями
↗
1
1
5м 9с
0
Закрытый
11.30
Дополнения в NIO.2 для связки с Stream_API
↗
1
1
7м 57с
0
Закрытый
11.31
Разбор тренировочных вопросов по Группам 9 и 10
↗
1
1
32м 59с
0
12. Тематическая группа 11: JDBC
8 уроков
8
8
56м
0
Закрытый
12.1
JDBC API: базовые концепции
↗
1
1
5м 49с
0
Закрытый
12.2
Ключевые компоненты JDBC
↗
1
1
4м 46с
0
Закрытый
12.3
Работа с ResultSet
↗
1
1
5м 17с
0
Закрытый
12.4
CRUD-операции
↗
1
1
5м 18с
0
Закрытый
12.5
ЭКСТРА: PreparedStatement и CallableStatement
↗
1
1
5м 21с
0
Закрытый
12.6
Специфические особенности сертификационных вопросов по JDBC
↗
1
1
7м 42с
0
Закрытый
12.7
Установка и подключение тренировочной СУБД Apache Derby
↗
1
1
6м 32с
0
Закрытый
12.8
Разбор тренировочных вопросов по Группе 11
↗
1
1
19м 23с
0
13. Тематическая группа 12: Локализация приложений
12 уроков
12
12
73м
0
Закрытый
13.1
Зачем нужна локализация
↗
1
1
3м 12с
0
Закрытый
13.2
Класс Locale
↗
1
1
5м 39с
0
Закрытый
13.3
Класс Properties
↗
1
1
6м 20с
0
Закрытый
13.4
Загрузка и сохранение свойств
↗
1
1
4м 10с
0
Закрытый
13.5
Класс ResourceBundle
↗
1
1
6м 47с
0
Закрытый
13.6
Форматирование дат и времени
↗
1
1
7м 6с
0
Закрытый
13.7
Локализация приложения с календарными датами
↗
1
1
13м 57с
0
Закрытый
13.8
Иерархия подбора нужного ресурса
↗
1
1
6м 39с
0
Закрытый
13.9
Скомпилированные ресурсы
↗
1
1
7м 25с
0
Закрытый
13.10
Форматирование и парсинг чисел
↗
1
1
2м 10с
0
Закрытый
13.11
Упраженение с локализацией численных данных
↗
1
1
4м 28с
0
Закрытый
13.12
Разбор тренировочных вопросов по Группе 12
↗
1
1
9м 27с
0
14. Outro
1 урок
2
2
6м
0
Закрытый
14.1
Заключительное слово
↗
2
2
6м 47с
0