Школы

Рейтинг на основе отзывов, авторитетности и популярности

Подборки

Полезные и актуальные курсы, отобранные вручную

Spring Advanced

Сложность
Сложность
Продвинутый
Тип обучения
Тип обучения
Курс
Формат обучения
Формат обучения
С проверкой домашнего задания
Трудоустройство
Трудоустройство
Нет
Сертификат
Сертификат
Есть

Стоимость курса

69 900 ₽
Нет рассрочки
Курс посвящен темам, необходимым для профессионального применения Spring Framework на практике, таким как расширенные вопросы применения Spring REST, технологии HATEOAS и CORS, документирование REST-сервисов, сериализация и ограничение данных, передаваемых клиенту, тонкости применения аннотации @Transactional, применение оптимистических транзакций, JWT-авторизация и сервер авторизации OAuth2, практическое применение реактивного программирования с использованием WebFlux, тестирование Spring-сервисов, планировщик задач и Actuator, развертывание в Docker.

Что вы получите после обучения

Навыки
2
OAuth
3
Spring
Сертификат

Школа

Оценка и обучение ИТ-специалистов по ключевым направлениям разработки программного обеспечения. Курсы от экспертов-практиков по языкам программирования, системному и бизнес-анализу, архитектуре ПО, ручному и автоматизированному тестированию ПО, Big Data и машинному обучению, управлению проектами и Agile. Действует скидка 10% на обучение физических лиц.

Преподаватели

Специалист в области WEB, XML и Java-технологий
За время своей профессиональной деятельности Вячеслав принимал участие в четырнадцати успешных проектах (в восьми – в роли разработчика, в четырех – в роли аналитика проекта, в двух - в роли архитектора). Имеет богатый опыт разработки программного обеспечения на всех стадиях жизненного цикла проекта. Бизнес-области проектов, в которых работал Вячеслав, весьма разнообразны: от банковских CRM-систем до Internet-порталов, от систем интеграции в области телекома до систем корпоративной автоматизации.

С 2008 г. преподаёт в Сетевой академии "Ланит" по программе ВКШ «Эксперт». 
В 2012–2014 гг. занимал должность эксперта в AT-Consulting; в 2009–2011 гг. – должности системного аналитика, руководителя группы системного анализа технологических проектов, администратора проекта в Лаборатории Касперского. 

С 2011 г. является тренером Luxoft Training по направлениям, связанным с корпоративной разработкой (Java SE/EE/Spring), интеграцией (XML, Web-сервисы, REST) и Front-end разработкой ((x)HTML/CSS/{Java/Coffee}Script).
Специалист в области разработки ПО
Профессиональный инженер-программист, опытный разработчик ПО с 8 YOE. Имея опыт работы с различными технологиями и подходами, он разрабатывал и внедрял решения в разных областях: платежи, социальные сети, геймдев, система управления складом, служба фулфилмента и доставки и другие. В настоящее время Тимур работает в Booking.com, где развивает платформу партнерских платежей.

Экспертиза распространяется на проектирование и развитие архитектуры серверных приложений, внедрение лучших практик разработки, создания отказоустойчивых систем, работа с техническими требованиями и прочее.

О проектах:
  • Ментор популярной онлайн-платформы по обучению программистов, преподаватель, ведущий воркшопов на хакатонах и разработчик курсов.

Программа курса

Разбираемые темы:
1. Spring Data REST - расширенные темы (5h)
1) Spring REST (3h)
Введение. Обзор Spring REST (1h)
Условные операции с применением заголовков (ETag, If-Match, If-None-Match, If-modified-since) (0.5h)
REST события (0.5h)
Модель зрелости REST-сервисов (0.5h)
Spring HATEOAS (0.5h)
2) API RestTemplate и WebClient для написания клиентов REST-сервисов (1h)
3) Документирование REST-сервисов с использованием Swagger и SpringFox (1h)
Домашняя работа: ~2 ч
2. Object mapping и валидация (5h)
Ограничение данных, передаваемых клиенту: @JsonIgnore, nullifying fields, DTO (1h)
Проекции и ограничения в Spring Data REST (1h)
Использование MapStruct для автоматического мэппинга в DTO (1h)
Пользовательские сериализаторы и десериализаторы (1h)
Валидация данных модели с помощью аннотаций javax.validation и кастомных аннотаций (1h)
Домашняя работа: ~2 ч
3. Транзакции (6h)
Аннотация @Transactional (0.5h)
Уровни изоляции транзакций (1h)
Распространение транзакций (2h)
Обработка исключений в транзакциях (0.5h)
Проблема вызова транзакции из того же бина (0.5h)
Оптимистические блокировки (0.5h)
Подключение нескольких БД к проекту (0.5h)
Распределенные транзакции и паттерн SAGA (0.5h)
4. Безопасность для REST-сервисов (JWT авторизация и управление ролями) (6h)
Подходы к использованию безопасности в Spring (1h)
Разработка сервера UAA с использованием OAuth2 (1h)
JWT токены (2h)
Использование Spring Security для доступа на основе ролей, демонстрация примеров (2h)
Домашняя работа: ~2 ч
5. Реактивное программирование на Spring WebFlux (8h)
Обзор реактивного подхода (0.5h)
Спецификация реактивных потоков в Java 9 (0.5h)
Классы Mono и Flux (0.5h)
Операторы (2h)
Реактивные драйверы БД R2DBC (0.5h)
Реактивный Spring Data (0.5h)
Построение REST API с использованием WebFlux (1h)
WebClient для получения реактивных данных (0.5h)
Протокол RSocket (1h)
Реактивный доступ к RabbitMQ (0.5h)
Реактивные паттерны и бенчмарки (0.5h)
Домашняя работа: ~2 ч
6. Тестирование сервисов Spring (4h)
Юнит-тесты с применением Mockito (0.5h)
Интеграционное тестирование (1h)
Аннотации тестирования Spring (0.5h)
Фреймворк TestContext (0.5h)
Серверные тесты REST (0.5h)
Тестирование REST сервисов в IntelliJ IDEA (0.5h)
Тестирование WebFlux (0.5h)
Домашняя работа: ~2 ч
7. Spring Планировщики (0.5h)
Аннотация @Scheduled
fixedRate, fixedDelay, initialDelay
использование выражений CRON
Домашняя работа: ~30 мин
8. Spring кэширование (2h)
Использование кеширования
Использование и параметры настройки EhCache
@Cacheable
@CacheEvict, @CachePut
@CacheConfig
Conditional кэширование
Java-based кэширование
Кэширование в Spring Data
Кэширование в Spring на основе EhCache
Конфигурирование EhCache
Домашняя работа: ~1 ч
9. Spring Boot Actuator (1h)
Actuator endpoints
Метрики в Spring Boot
Мониторинг и управление через HTTP
Инструмент мониторинга Spring Boot Admin
10. Развертывание приложения Spring (2,5h)
Развертывание в Docker (0.5h)
Развертывание в nginx as a front serverв качестве фронт-сервера (включая балансировку нагрузки) (0.5h)
HTTP кэширование при помощи NGINX (0.5h)
Развертывание приложения Spring с помощью nginx - контейнерная установка, docker-compose (0.5h)
Домашняя работа: ~30 min

Рейтинг курса

4.2
Может быть интересно
Spring Advanced
На сайт курса

Spring Advanced