Разработка enterprise приложений на Java
Hibernate, Spring, REST, "web service", "web sockets", Maven, Git, Jenkins, Redis, Angular

Информация о курсе:
Длительность курса: 3 месяца (67,5 часов)
Субботние группы: 15 занятий х 4,5 часа
Дата начала курса:
(занятия проходят по субботам)
Записаться в группу
Требования к участникам: владение фундаментальными технологиями Java ("Core Java") на уровне первой "Основы программирования на JAVA" и второй "Профессиональное программирование на JAVA" части курса. Уверенное владение классами и объектами в роли компонентов, взаимодействующих между собой в сложных структурах.
- Проектирование информационных систем с помощью UML
- Создание современных реляционных баз данных
- Управление транзакциями в БД
- Работа с базой данных через JDBC. Паттерн DAO. Технология объектно-реляционного отображения ORM.
- Java рефлексия и создание собственного DAO
- Спецификация JPA
- Основы использования Hibernate
- Сущности, наследование
- Отношения сущностей
- JPA Query Language
- Кеширование в Hibernate
- Системы управления версиями (обзор)
- Работа в системе Git. Общественные репозитории Github, Bitbucket
- Системы автоматической сборки проектов (обзор)
- Работа со сборщиком проектов Maven
- Непрерывная интеграция (CI) с помощью Jenkins
- Основы технологии Single Page Application
- Язык программирования JavaScript
- Формат обмена данными JSON
- Технология AJAX
- Bootstrap
- Основы фреймворка Angular 7
- Связывание шаблона и модели
- Обработка HTTP запросов через сервлеты. Понятие о REST.
- JSP страницы
- Тэги и JSTL
- Паттерны для разработки приложений взаимодействующих с пользователем (MVC, MVP, MVVW) – Command, Observer.
- Сессии и cookies
- Создание веб-приложения с помощью сервлетов и MVC
- Вспомогательные сервлет-технологии – Listeners, Filters
- Принципы SOLID
- Java reflection
- Внедрение зависимостей (dependency injection)
- Spring IoC контейнер и инъекция зависимостей
- Обзор способов конфигурирования Spring-приложения
- Spring MVC
- Spring + Hibernate
- Язык программирования JavaScript
- Формат обмена данными JSON
- Технология AJAX
- Фреймворк Bootstrap
- Основы протокола WebSocket
- Взаимодействие Java/Javascript приложений через WebSocket
- Использование WebSocket в фреймворке Spring
- Создание Java Message Service приложения
- Протокол OAuth2
- Spring Security
- Keycloak · Формат jwt –токена
- Realm, clients, users в keycloak
- Plugins в Keycloak
- Связь Spring Security и Keycloak
- Keycloak admin client.
- Messaging in Spring
- Kafka
- Пакет spring-cloud-stream
- Работа с БД Redis
- Логгирование. Log4j2
- Тестирование. jUnit. Mocks.
- Документирование. Swagger, Spring.RestDocs
Практическая работа: учебный веб проект с полным стеком технологий
