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

Информация
Цена: 395 РУБ
Организатор: Kail Kail
Ссылки для скачивания
Kail
Kail
Организатор
Организатор
Регистрация
09.04.2020
Сообщения
392 192
Реакции
38 080
Монеты
1 191
Оплачено
0
Баллы
0
  • #SkladchinaVip
  • #1
[Stepik] FARM: Функциональная, асинхронная, реактивная, многопоточная Java [Игорь Судакевич]
Ссылка на картинку
Для кого этот курс
  • 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 (Москва).
Показать больше
 
Зарегистрируйтесь , чтобы посмотреть скрытый контент.
Поиск по тегу:
Теги
farm stepik асинхронная игорь судакевич многопоточная java реактивная функциональная
Похожие складчины
Kail
Ответы
0
Просмотры
335
Kail
Kail
Kail
Ответы
0
Просмотры
617
Kail
Kail
Kail
  • Kail
0
Ответы
0
Просмотры
632
Kail
Kail
Kail
Ответы
0
Просмотры
254
Kail
Kail
Kail
Ответы
0
Просмотры
64
Kail
Kail
Показать больше складчин

Войдите или зарегистрируйтесь

Вы должны быть авторизованны для просмотра материала

Создать аккаунт

Создать учетную запись займет не больше минуты!

Войти

Уже зарегистрированы? Просто войдите.