Backend и ООП на Java
Backend и ООП на Java
Образовательный курс по Java для начинающих SWE-специалистов.
Темы курса
Введение в Java и основы синтаксиса
Базовый синтаксис языка Java
Типы данных - Условия и циклы
Массивы
Строки
Объектно-ориентированное программирование в Java
Объекты и классы
Инициализация
Инкапсуляция
Отношения классов
Полиморфизм и интерфейсы
Пакеты
Класс Object
GC
Перечисления
Исключения
Generics
Внутренние классы
Шаблоны ООП
Что такое шаблоны ООП
Виды шаблонов
Работа с коллекциями в Java
Списки
Мапы
Прочие коллекции
Стрим
Тестирование Java приложений
Виды тестов
Этапы тестирования
Настройка Maven
Модульные тесты в Junit
Заглушки с Mockito
Инструментирование кода и аннотации
Рефлексия
Аннотации
Введение в фреймворк Spring
Контейнер Spring
Инициализация
Точки расширения
Работа с базами данных в Java
JDBC
Hibernate
Spring Data
Spring Boot и конфигурация
Общая концепция Spring Boot
Настройка бинов Spring Data через Boot
Разработка веб-приложений с Spring Web
Протокол HTTP
Сервлеты
Spring WebMVC
Шаблонизаторы
REST API
Тестирование REST
Многопоточное программирование в Java
Thread
Mutable/Immutable
Volatile
Атомарность
Критические секции
Executor - Потоки-демоны
Перехват исключений
Мьютексы
Wait Notify NotifyAll
Очереди
Семафоры
Очереди и брокеры сообщений
Роль и использование очередей
Примеры брокеров сообщений (например, Apache Kafka, RabbitMQ)
Списки, фильтры, пагинация и т.д.
Работа с списками данных
Применение фильтров и пагинации для управления данными
Работа с файлами
Операции с файловой системой
Загрузка, сохранение и удаление файлов на сервере
Парсинг файлов и выгрузка файлов
Чтение и обработка данных из файлов различных форматов
Загрузка и выгрузка файлов через веб-приложение
Блокировки и ограничения доступа
Реализация механизмов блокировок и ограничений доступа к данным
Обеспечение безопасности при работе с критическими ресурсами
Записаться на курс