Скрыть объявление

Внимание!


Наш телеграм-канал попал под массовую блокировку и, пока мы подготовили для вас резервный!


Подписывайтесь по этой ССЫЛКЕ

Скрыть объявление

Сегодня — Всемирный день здоровья

Идеальный момент не «начать новую жизнь с понедельника», а просто немного позаботиться о себе уже сегодня

Запускаем Акцию!

Подробности ТУТ

Скрыть объявление

Сегодня последний день акции.

Успейте поучаствовать.

Подробности ТУТ

Скрыть объявление

На короткое время рассказываем где достать редкие курсы

Подробности ТУТ

Скрыть объявление

Мы обновили Telegram-бот!

Ссылку на новый бот и все детали ищите ТУТ и скорее подписывайтесь, чтобы не пропускать важные уведомления и новости форума

Скрыть объявление

Было ли у Вас такое, что Вы не могли найти курс? Если да, то напишите нам в Службу поддержки какой курс вам нужен и мы постараемся его найти.

Скрыть объявление

Пополняйте баланс и получайте при оплате складчин кэшбек в размере 10%

Запись

[stepik] FARM: Функциональная, асинхронная, реактивная, многопоточная Java (Игорь Судакевич)

Тема в разделе "Курсы по программированию"

Цена:
15000 руб
Взнос:
605 руб
Организатор:
Евражкa

Список участников складчины:

1. Евражкa
open
2
Записаться
  1. Евражкa Организатор складчин

    [stepik] FARM: Функциональная, асинхронная, реактивная, многопоточная Java (Игорь Судакевич)

    [​IMG]

    Для кого этот курс

    • Java-программисты Middle-уровня, желающие глубоко освоить приемы создания асинхронно-реактивного кода для событийно-ориентированной и потоковой обработки данных, в т.ч. в Spring-приложениях.
    Начальные требования
    • Уверенное владение Java, желательно знание Spring и принципов взаимодействия с СУБД.
    Состав учебной программы:
    Модуль 1 (факультативный) — функциональная java (~6 часов видеолекций)

    • Лямбда-выражения и встроенные функциональные интерфейсы
    • Примитивные специализации, унарные и бинарные версии функциональных интерфейсов
    • Метод map(), в т. Ч. Его примитивные специализации
    • Поиск «короткозамыкающими» операторами
    • Применение класса optional, в т. Ч. Его примитивных специализаций
    • Фильтрация и обработка данных на stream-объектах, в т. Ч. Работа с методом flatmap()
    • Сортировка коллекций с применением stream api
    • Сегментирование / классификация элементов с помощью утилитарного класса collectors
    • Немутирующие редукторы при параллельной и последовательной обработке
    • Каррированные функции
    • Динамическая типизация и произвольные лямбда-выражения
    • Глубокое погружение в ссылки на методы
    Модуль 2 — асинхронная java (~6 часов видеолекций)
    Подмодуль 2. 1 – completable future

    • Проблемы синхронного кода в блокирующих сценариях
    • Sync и async методы в классе completablefuture
    • Combine-, composе- и anyof-операции
    • Специфика обработки исключений в completablefuture
    • Completablefuture в сценариях с пользовательскими executorservice-пулами
    • Отмена completablefuture
    • Применение completablefuture в потоках данных на практике
    • Подмодуль 2. 2 – неблокирующий ввод/вывод на базе nio
    • Основные различия между java nio и io
    • Потоко- и буфер-ориентированный ввод/вывод
    • Блокирующий и неблокирующий ввод/вывод
    • Java nio buffer, channel и selector
    • Direct и non-direct буферы
    • Mappedfilebuffer
    • Асинхронный ввод / вывод средствами nio
    • Класс filelock и избирательная блокировка файлов
    • Примеры промышленной nio-архитектуры (сервер netty, node. Js и др. )
    Модуль 3 — реактивная java (~21 часов видеолекций)
    Подмодуль 3. 1 – библиотека rxjava

    • Понятие «реактивность» и цели реактивного манифеста
    • Основы rxjava: observable и observer
    • Реактивные потоки в java 9
    • Методы с побочными эффектами
    • Обработка ошибок в полностью функциональном стиле
    • «горячие» и «холодные» паблишеры
    • Расшаренные и connectable-паблишеры
    • Утилизация реактивного конвейера (disposing)
    • Каталог наиболее востребованных реактивных операторов rxjava
    • Subjects
    • Многопоточность в реактивных стимах на базе schedulers
    • Противодавление (backpressure) и flowable-паблишеры
    • Тестирование реактивных конвейеров в rxjava
    Подмодуль 3. 2 – библиотека reactor
    • Флагманские паблишеры flux / mono и их операторы
    • Работа с backpressure в reactor
    • Поддержка многопоточности в reactor
    • Распараллеливание flux-конвейеров
    • Обертки для синхронных вызовов
    • Reactor-процессоры
    • Тестирование реактивных конвейеров в reactor
    Подмодуль 3. 3 – spring webflux и практическое реактивное программирование
    • Spring rest контроллеры, возвращающие реактивные данные как mono и flux
    • Функциональные контроллеры в webflux
    • Server-sent events (sses)
    • Webclient для получения потока реактивных данных от сервера
    • Реактивный доступ к субд
    • Реактивный драйвер r2dbc
    • Реактивные репозитории в spring data
    • Работа с реактивным репозиторием в spring data на примере mongodb
    • Бенчмаркинг для r2dbc и webflux против web mvc с jdbc
    • Рекомендуемые практики реактивного программирования
    • Бонусные лекции: реактивная имплементация брокера сообщений kafka
    Модуль 4 (факультативный) — многопоточная java (~6 часов видеолекций)
    • Создание рабочих подпроцессов (threads) на базе runnable- и callable-объектов, и применение интерфейсов executorservice и future для асинхронного исполнения задач
    • Выявление потенциальных проблем конкурентного режима, в т. Ч. Статическая блокировка (deadlock), зависание по недоступу к ресурсу (starvation), динамическая блокировка (livelock) и состояние гонки (race conditions / data race)
    • Применение ключевого слова synchronized и пакета java. Util. Concurrent. Atomic для управления порядком исполнения подпроцессов
    • Работа с синхронизационными примитивами, в частности, на базе интерфейса lock и классов reentrantlock, condition, cyclicbarrier, semaphore и др.
    • Fork/join framework и рекурсивная парадигма, в т. Ч. Top-down и bottom-up
    Преподаватель: Игорь Судакевич
    Свою первую строчку кода написал в нежном 11-летнем возрасте в уже легендарном 1973-м году. По первому образованию (МИСиС) инженер-исследователь, специалист в области автоматизации физико-химического эксперимента. Затем учился в MBA-колледже Эдинбургского универа, также в МГУ (лингвистика). Master of Computer and Internet Technology от унив-та шт.Пенсильвания (Ivy League). 15 лет жил и работал в Японии, где занимался вопросами обработки больших массивов данных (Big Data) в Институте статистики ООН для стран Азиатского и Тихоокеанского региона (SIAP). Oracle Certified Professional, Authorized Oracle Instructor. Java-методист c 20-летним стажем. Вел вебинары и очные занятия в учебных центрах "Люксофт", "ФОРС", "Инвека", "Academy IT". В наст.время преподает в Учебном центре IBS (Москва).

    Скрытый текст. Доступен только зарегистрированным пользователям.Нажмите, чтобы раскрыть...
     
  2. Похожие складчины
    Загрузка...
Наверх