Вартість курсу: 5 000 грн на місяць Тривалість курсу: 3 місяці, 67 астрономічних годин Дата початку курсу:уточнюйте дату у менеджерів Вимоги до слухачів: знання тем курсу «Основи програмування на Java»
Використання інтерфейсів для проектування системи. Паттерни Callback та Delegate.
Клонування об'єктів
Глобальний суперклас Object та його методи.
Глибоке та поверхове копіювання об'єктів. Cloneable інтерфейс.
Ініціалізація об'єктів із змінним числом атрибутів. Паттерн Builder.
Робота з файлами
Пакет java.io Клас File. Робота з файлами та каталогами. Читання даних із файлу та запис даних у файл. Класи FileReader, FileWriter, BufferedReader та BufferedWriter.
Виняткові ситуації, що виникають під час звернення до файлів.
Інтерфейси FileFilter, FilenameFilter.
Серіалізація об'єктів
Області застосування серіалізації. Інтерфейси Serializable та Externalizable.
Узагальнене програмування (Generics)
Поняття та призначення узагальненого програмування. Узагальнений клас. Примірник узагальненого типу. Узагальнені методи. Обмеження узагальнень. Спадкування узагальнених типів.
Анотації в Java
Використання вбудованих анотацій. Створення власних інструкцій.
Робота з базами даних
Основи роботи з базами даних Поняття та призначення баз даних (БД) та систем управління базами даних (СУБД). Найбільш використовувані СУБД. Реляційні бази даних Основні поняття теорії баз даних. Проектування бази даних. Типи даних, що зберігаються у БД. Нормальні форми. Забезпечення цілісності даних.
Основи мови структурованих запитів SQL. Призначення та використання SQL. Створення бази даних (оператор CREATE). Модифікація даних (оператори INSERT та UPDATE). Вибір даних (оператор SELECT). Вибірка з кількох таблиць. Вибір з умовою (оператор WHERE). Сортування даних (оператор ORDER BY). Угруповання даних (оператор GROUP BY).
Запити на з'єднання, об'єднання, віднімання таблиць.
Пакет java.sql. Встановлює з'єднання з базою даних. Класи Connection, Statement та ResultSet.
Патерн проектування DAO. Робота з базами даних із використанням технології ORM.
Колекції
Класи колекцій. Інтерфейси колекції. Інтерфейс Collection. Інтерфейси Iterator та Iterable.
Поняття багатопотокової програми. Клас Thread. Інтерфейс Runnable та особливості його реалізації. Пріоритети потоків. Методи join(). Переривання роботи потоку. Синхронізація потоків. Синхронізовані методи. Концепція монітора. Ключове слово synchronized та його форми.