Курс Java (back-end розробка)
Наразі набір на цей курс не проводиться. Перегляньте інші курси
- Online
- Для початківців
- Java, Backend
![]() |
|
Навчальний центр: | Lemon School |
---|---|
Формат: | Курс |
Мова викладання: | Ukrainian |
Тривалість навчання: | 5 місяців |
Початок курсу: | 08.12.2023 |
Вартість навчання: | 19 500 UAH за курс |
При оплаті відразу за весь курс - 17550 грн.
На цьому курсі ти опануєш мову програмування Java з 0 і станеш junior-розробником.
Програма курсу
Модуль 1 - Основи програмування
Заняття 1. Основи програмування
- Розробка ПЗ. Основні поняття
- Основні професії та ролі в команді розробників ПЗ
- Основні методології розробки ПЗ
- Основи створення алгоритма програми
Заняття 2. Комп'ютерна програма. Структура програми. Типи програм
- Умовна класифікація комп'ютерних програм
- Типи комп'ютерних програм
- Технології розробки програм
- Структура програми на Java
- Написання програми для збору та виводу інформації щодо користувача
Заняття 3. Алгоритм. Властивості алгоритму
- Алгоритм
- Властивості алгоритмів
- Складність алгоритмів
- Основні елементи алгоритмів та їх реалізація в коді
- Інструменти для створення алгоритмів (Draw.io)
- Створення простого алгоритма
- Реалізація індивідуального алгоритма за обраним завданням
Заняття 4. Мови програмування
- Мови програмування (Java, Python, Assembly)
- Різниця між компілятором та інтерпретатором
- Структура віртуальної машини Java (JVM/JRE/JDK)
- Умовні оператори Java та в інших мовах програмування
- Написання алгоритму та програми, яка містить умовні оператори, що реалізовані на різних мовах програмування
Заняття 5. Ввід/вивід, змінні, вирази, типи даних Java
- Input/Output
- Змінні, константи
- Типи даних
- Java expressions (вирази)
- Пояснення щодо виконання ДЗ
Заняття 6. Керуючі оператори Java
- Умовні оператори
- Цикли
- Оператори переходу
- Основи роботи із системами контролю версій
- Пояснення щодо виконання домашнього завдання
Заняття 7. Робота із системами контролю версій (GitHub/GitLab).Управління проєктними залежностями та збіркою (Maven/Gradle)
- Maven/Gradle dependency, build
- Основна ідея використання систем контролю версій
- Основні операції: Commit, Push, Pull, Cherry Pick, master feature branches
Заняття 8. Масиви Java. Особливості роботи із ними
- Загальні відомості про масиви даних
- Обробка масивів
- Стандартні інструменти для роботи з масивами
- Пояснення щодо виконання домашнього завдання
Заняття 9. Методи (Функції). Визначення та виклик методу
- Метод
- Параметри методів
- Varargs
- Практика
Заняття 10. Ітеративні та рекурсивні алгоритми
- Рекурсія. Поняття рекурсії
- Приклади реалізації рекурсивних алгоритмів
- Поняття ітерації
- Приклади реалізації ітеративних алгоритмів
- Рекурсивні алгоритми vs Ітеративні алгоритми
- Практика
Заняття 11. Java String
- Особливості роботи з String
- String. Управління пам'яттю
- Strings та масиви
- Класи-обгортки
- StringBuffer
- StringBuilder
Заняття 12. Приклад реалізації гри "Хрестики-Нулики"
Модуль 2 - Об'єктно-орієнтоване програмування
Заняття 13. Основи об'єктно-орієнтованого програмування
- Поняття класу та об'єкту
- Поняття методу
- Як правильно називати методи
- Стек викликів
- Розділення коду на методи (основи рефакторингу)
- Модифікатор static, final
Заняття 14. Інкапсуляція. Наслідування. Поліморфізм
- Інкапсуляція (рівні доступу)
- Наслідування
- Поліморфізм. Види поліморфізму
Заняття 15. Дженеріки (узагальнені типи даних). Поняття "Wild Card"
- Generic-типи в Java
- Використання ключових слів "extends", "super"
- Призначення "Wild Card"
Заняття 16. Інтерфейси, абстрактні класи. Частина 1
- Абстрактні класи
- Інтерфейси
- Статичні методи та методи за замовчуванням в інтерфейсах
Заняття 17. Інтерфейси, абстрактні класи. Частина 2
Заняття 18. Лямбда-вирази та функціональний інтерфейс
- Поняття лямбд
- Поняття функціонального інтерфейсу
- Різновиди функціональних інтерфейсів
- Практика використання лямбд та функціональних інтерфейсів
Заняття 19. Колекції. Потоки. Частина 1
- Поняття колекції
- Види колекцій
- Обробка колекцій за допомогою потоків
- Термінальні та нетермінальні операції
Заняття 20. Колекції. Потоки. Частина 2
- Індексні потоки
- Різновиди індексних потоків
- Практика використання Stream API
- Хеш-таблиці (HashMap)
Заняття 21. Виключення (Exceptions)
- Синтаксис
- Ієрархія наслідування
- Best Practice - підходи до формування фреймворку
Заняття 22. Логування
- Бібліотека sl4j
- Конфігурація Logback
- Розробка Log Framework
Модуль 3 - Інструменти професійного програмування
Заняття 23. Розробка тестів. Частина 1
- Піраміда тестування
- Розробка Unit-тестів
- Покриття тестами
Заняття 24. Розробка тестів. Частина 2
- Використання Mock'їв в розробці Unit-тестів
- Функціональний інтерфейс
- Основи рефлекції
- Stream API
Заняття 25. Анотації та рефлексія в Java. Частина 1
- Анотації. Створення власних анотацій
- Основи рефлексії: точки входу в рефлекцію
- Робота із модифікатором доступу
Заняття 26. Анотації і рефлексія в Java. Частина 2
- Використання Optional
- Анотації. Створення власних анотацій
- Практика створення бібліотеки для роботи із csv-документами
Заняття 27. Розробка багатопоточних додатків. Частина 1
- Поняття потоку та процесу
- Інтерфейс Runnable. Робота із класом Thread
- Інтерфейс Collable
Заняття 28. Розробка багатопоточних додатків. Частина 2
- Пакет Concurrency: Executor та Future
- Mutex, Semaphore
- Deadlock, Live Lock
Заняття 29. Основи дизайну та проєктування додатків. Паттерни проєктування
- Архітектурні паттерни та підходи (MVC, MVVM, MVP)
- Структурні паттерни (Декоратор, Міст)
- Породжувальні паттерни (Одинак - Singleton, Будівельник - Builder)
- Поведінкові (Посередник, Спостерігач - Observer, Команда - Command)
Заняття 30. Основи SQL. Реляційна модель даних. DDL
- Створення таблиці
- DDL-запити (CREATE, ALTER, DROP)
- Приклади створення SQL-запитів
- Практика написання простих запитів
Заняття 31. Нормалізація та нормальні форми. DML. Частина 1
- Нормалізація бази даних до третьої нормальної форми
- Зв'язки між таблицями (концепція Primary/Foreign Key)
- Зв'язки в таблиці: one-to-one, one-to-many, many-to-many
Заняття 32. Нормалізація та нормальні форми. DML. Частина 2
- Запити на отримання даних
- Запити на модифікацію даних: INSERT/UPDATE/DELETE
- Використання підзапитів (pros, cons)
Заняття 33. JOIN. UNION. SQL-funcions
- AND OR NOT
- ORDER BY
- (COUNT, AVG, MIN, MAX, ROUND)
- JOIN
- UNION
- HAVING
Заняття 34. Просунуті запити в SQL
- Використання WITH
- DECLARE
- CURSOR
- SQL Stored Procedures
Заняття 35. Мова керування даними (DCL)
- GRANT
- REVOKE
- DENY
Заняття 36. Мова керування транзакціями (TCL)
- Принципи ACID
- Управління транзакціями
- BEGIN/COMMIT/ROLLBACK/SAVE TRANSACTION
Заняття 37. Імплементація взаємодії із БД. Технологія Hibernate
- Підключення Hibernate до проєкту (Hibernate-конфіг)
- Практика розробки консольного додатку із БД
Модуль 4 - Програмування під Веб. String Framework
Заняття 38. Основи програмування під Web
- Socket - протоколи
- RESTful API (рівні зрілості REST API)
- Web-Servlet
Заняття 39. Основи Spring фреймворк
- Концепція IoS (Inversion of control)
- Ін'єкція залежностей (Dependency Injection)
- Анотації Spring
- Spring Beans
Заняття 40. Spring фреймворк
- Spring bean scopes
- Шаблонізатори (thymeleaf)
- Створення власної анотації
Заняття 41. Дизайн додатків Spring
- Багатошарова архітектура
- Основи Spring Boot
- Основи Spring REST API
- Інтеграція додатків Spring із БД (Spring Data: JPA)
Заняття 42. Основи Spring Security. Частина 1
- Робота із фільтрами
- Реєстрація/авторизація/аутентифікація
- Робота із сесіями
- Протокол QAUTH
Заняття 43. Основи Spring Security. Частина 2
Заняття 44. Розробка динамічного інтерфейсу для Spring RESTful API додатку. Частина 1
- Розуміння роботи з token
- Розуміння роботи з JWT
- Протокол QAUTH
Заняття 45. Розробка динамічного інтерфейсу для Spring RESTful API додатку. Частина 2
- Основи застосування JavaScript
- Огляд основних JS-фреймворків (NodeJS, VueJS, Angular)
- Демо-додаток із динамічним UI
Заняття 46. Основи контейнеризації на прикладі Docker
Демо-додаток із динамічним UI на базі JS-фреймворку
Заняття 47. Застосування Docker-compose для мультиконтейнерних додатків
- Розгортання Docker на локальному комп'ютері
- Запуск додатку із контейнера
- Розгортання простого менеджера NoSQL (Reddis) та налаштування його взаємодії із запущеним сервісом
Заняття 48. Основи мікросервісної архітектури. Використання CQRS-систем
- Приклад розробки додатку із мікросервісною архітектурою
- Розгортання та імплементація RabbitMQ
Заняття 49. Розмова з кар'єрним менеджером
- Як і де шукати роботу для початківця і які інструменти при цьому використовувати
- Як правильно зробити резюме і яка інформація у ньому є надважлива, а що буде зайвим
- Як створити профіль на Linkedin, щоб його могли побачити потенційні роботодавці
- 7 порад, які допоможуть пройти онлайн співбесіду набагато успішніше
- Q&A
Особливості курсу
- Безкоштовна IT англійська
- Додаткові матеріали
- Кар'єрний менеджер
- Лекція Project Manager
- Діджитал диплом для Linkedin
Викладачі курсу
Ігор Бібічков - Senior Java Developer
Категорії курсу
Читайте нас в Telegram, щоб не пропустити анонси нових курсів.
Схожі курси
Навчальний центр
Foxminded
Формат
Online
Початок навчання
Будь-який момент
Тривалість
7 годин
Рівень
Для досвідчених
Мова навчання
Ukrainian
Вартість
3 300 UAH за курс
Навчальний центр
EPAM
Формат
Online
Початок навчання
Будь-який момент
Тривалість
-
Рівень
Для початківців
Мова навчання
English
Вартість
безкоштовно
Навчальний центр
QALight
Формат
Online
Початок навчання
24.09.2025
Тривалість
70 годин
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
14 885 UAH за курс
Навчальний центр
Main Academy
Формат
Online
Початок навчання
Дата формується
Тривалість
5 місяців
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
22 000 UAH за курс