- Регистрация
- 8 Сен 2016
- Сообщения
- 562.706
- Реакции
- 269.199
**Java Advanced I: функциональное, асинхронное и реактивное программирование [IBS]**
Курс посвящен современным функциональным и реактивным подходам к разработке на Java, повышающим производительность бекенда. В программу включены изучение:
- Неблокирующего ввода-вывода NIO2
- Асинхронных промисов CompletableFuture
- Библиотек реактивного программирования RxJava и Reactor
- Интерфейса асинхронного доступа к БД R2DBC
- Потокового протокола SSE
- Реактивных репозиториев Spring Data reactive
- WebClient
- Протоколов WebSocket и RSocket
- Практические примеры применения.
**Спойлер: Разбираемые темы**
**Модуль 1. Функциональная Java (теория - 2 ч. + практика 1 ч.)**
- Функциональные интерфейсы
- Ссылки на метод
- Потоки данных
- Map / filter / reduce
- Агрегационные функции
- Цепочки потребителей
- Потоковые коллекторы
**Модуль 2. Executor framework. Fork-Join pool (теория - 3 ч.)**
- Executors
- Future интерфейс
- Callable интерфейс
- Отмена задач
- ForkJoin Framework
- Параллельные потоки в Java 8+
- Сравнение ForkJoin, параллельных и последовательных потоков
**Модуль 3. Неблокирующий ввод-вывод NIO (теория - 3 ч. + практика - 2 ч.)**
- Основные различия между Java NIO и IO
- Java NIO Buffer и Channel
- Direct буфер и Mapped file буфер
- Java NIO Selector
- Асинхронный ввод / вывод с NIO
- Сервер Netty
**Модуль 4. Асинхронная Java (CompletableFuture) (теория - 3 ч. + практика - 2 ч.)**
- Проблемы с синхронным кодом
- Объединение, составление и обработка исключений в CompletableFuture
- Отмена CompletableFuture
- Использование CompletableFuture для реального потока данных
**Домашняя работа. Практика (2 часа).**
**Модуль 5. Реактивное программирование (теория - 8 ч.)**
- Основы RxJava
- Обработка ошибок и потоки Java Reactive Streams
- Различие между горячими и холодными потоками
- Освобождение потоков и реактивные операторы
- Противодействие (backpressure) и интерфейс Flowable
**Модуль 6. Проект Reactor (теория - 4 ч.)**
- Операторы Flux / Mono в Reactor
- Работа с backpressure и многопоточность
- Тестирование Reactor
**Модуль 7. Spring WebFlux и практическое реактивное программирование (теория - 6 ч. + практика - 2 ч.)**
- Реактивный доступ к БД и драйверы R2DBC
- Реактивные репозитории Spring Data
- WebFlux и WebClient
- Протоколы WebSocket и RSocket
- Использование реактивных потоков с брокером сообщений
- Бенчмарки: R2DBC против JDBC и WebFlux против Web MVC
- Архитектура реактивного программирования
**Продолжение: часть 2**
Курс посвящен современным функциональным и реактивным подходам к разработке на Java, повышающим производительность бекенда. В программу включены изучение:
- Неблокирующего ввода-вывода NIO2
- Асинхронных промисов CompletableFuture
- Библиотек реактивного программирования RxJava и Reactor
- Интерфейса асинхронного доступа к БД R2DBC
- Потокового протокола SSE
- Реактивных репозиториев Spring Data reactive
- WebClient
- Протоколов WebSocket и RSocket
- Практические примеры применения.
**Спойлер: Разбираемые темы**
**Модуль 1. Функциональная Java (теория - 2 ч. + практика 1 ч.)**
- Функциональные интерфейсы
- Ссылки на метод
- Потоки данных
- Map / filter / reduce
- Агрегационные функции
- Цепочки потребителей
- Потоковые коллекторы
**Модуль 2. Executor framework. Fork-Join pool (теория - 3 ч.)**
- Executors
- Future интерфейс
- Callable интерфейс
- Отмена задач
- ForkJoin Framework
- Параллельные потоки в Java 8+
- Сравнение ForkJoin, параллельных и последовательных потоков
**Модуль 3. Неблокирующий ввод-вывод NIO (теория - 3 ч. + практика - 2 ч.)**
- Основные различия между Java NIO и IO
- Java NIO Buffer и Channel
- Direct буфер и Mapped file буфер
- Java NIO Selector
- Асинхронный ввод / вывод с NIO
- Сервер Netty
**Модуль 4. Асинхронная Java (CompletableFuture) (теория - 3 ч. + практика - 2 ч.)**
- Проблемы с синхронным кодом
- Объединение, составление и обработка исключений в CompletableFuture
- Отмена CompletableFuture
- Использование CompletableFuture для реального потока данных
**Домашняя работа. Практика (2 часа).**
**Модуль 5. Реактивное программирование (теория - 8 ч.)**
- Основы RxJava
- Обработка ошибок и потоки Java Reactive Streams
- Различие между горячими и холодными потоками
- Освобождение потоков и реактивные операторы
- Противодействие (backpressure) и интерфейс Flowable
**Модуль 6. Проект Reactor (теория - 4 ч.)**
- Операторы Flux / Mono в Reactor
- Работа с backpressure и многопоточность
- Тестирование Reactor
**Модуль 7. Spring WebFlux и практическое реактивное программирование (теория - 6 ч. + практика - 2 ч.)**
- Реактивный доступ к БД и драйверы R2DBC
- Реактивные репозитории Spring Data
- WebFlux и WebClient
- Протоколы WebSocket и RSocket
- Использование реактивных потоков с брокером сообщений
- Бенчмарки: R2DBC против JDBC и WebFlux против Web MVC
- Архитектура реактивного программирования
**Продолжение: часть 2**
Для просмотра скрытого содержимого вы должны зарегистрироваться
Возможно, Вас ещё заинтересует:
- Эффективные приемы работы при формировании и коррекции почерка у младших школьников [Профиль: учитель начальных классов] [Дефектология Проф]
- [Вязание] Объемный свитер вязаный спицами из толстой пряжи Vault [Вяжи.ру] [Ким Харгривз]
- И-Цзин. Лекция 42 [Касталия] [Григорий Зайцев]
- Зависимые отношения. Выход [Лилия Король]
- Теорвер [Поступашки] [Владислав Васильев]
- Клуб Зеленой Свиньи (28 октября 2026 - 1 декабря 2026) [Тариф Клубная карточка] [Олег Макаренко, Кримсональтер]
- [Шитье] Осенний курс-сюрприз [Сантюр] [Наталья Моргунова]
- Сезонный гид. Трендбук. Осень 2026. Россия [Рита Степанченко]