Модуль 1. Алгоритми. | |
1.1 | Опрацювання текстових даних на основі технології regex. Класи Pattern, Mattcher, Scanner. |
1.2 | Серіалізація файлів. Інтерфейси Serializable та Externalizable. Особливості композиції та наслідування при серіалізації. |
Модуль 2. Контейнери даних. Технологія generics | |
2.1 | Інтерфейси Set, Queue. Класи TreeSet, PriorityQueue, Dequeue. |
2.2 | Інтерфейс Мар. Принципи побудови hash-таблиць. Клас HashMap. |
2.3 | Методи класу Collections. Класи Vector, HashTable, Stack. |
2.4 | Побудова та використання generic-класів та generic-методів. |
2.5 | Особливості поліморфізму при використанні generic-колекцій. |
Модуль 3. Технології опрацювання | |
3.1 | Багатопотокове програмування |
3.1.1 | Основи створення та використання потоків. Клас Thread. Інтерфейси Runnable, Callable, Executor, ExecutorService. |
3.1.2 | Основи синхронізації потоків. Ключове слово synchronized. Синхронізація статичних методів |
3.1.3 | Реалізація синхронізації на основі фреймворку Fork-Join. |
3.1.4 | Реалізація синхронізації на основі ресурсів пакетів java.util.concurrent, java.util.concurrent.atomic, java.util.concurrent.locks. |
3.1.5 | Взаємодія потоків. Методи wait, notify класу Object. Поняття взаємного блокування (deadlock), запобігання deadlock, поняття coupling. |
3.2 | Фреймворк потоків Stream API |
3.2.1 | Проміжні та термінальні методи інтерфейсу Stream для формування та опрацювання потоків. Клас Optional. |
3.2.2 | Особливості технології потокового зведення. Метод reduce. |
3.2.3 | Методи класу Collectors. |
3.2.4 | Розпаралелювання потоків. Порівняльний аналіз послідовних та паралельних потоків, визначення доцільності розпаралелювання потоків. |
3.2.5 | Використання потоків для роботи з файлами. |
1. Встановлення Eclipse. Перша програма. Поняття проєкта, пакета, класа. Малювання прямокутника, кола. АРІ пакету java.awt. Малювання автомобіля.
2. Необхідність використання змінних. Оголошення примітивних змінних.
3. Цикли. Малювання декількох автомобілів. Малювання будинку з вікнами.
4. Вкладені цикли. Малювання багатоповерхових будинків з вікнами.
5. Робота з кольорами. Малювання державних прапорів. Робота з текстом. Масиви (кольори одного прапору). Почергове малювання прапорів країн з горизонтальною та вертикальною орієнтацією кольорових смуг.
6. Двомірні масиви (кольори прапорів різних країн). Одночасне малювання прапорів різних країн
7. Малювання ліній. Малювання повітряної кулі.
8. Робота з кнопками. Опрацювання подій.