В рамках образовательных программ в e-Legion мы проводим лекции по Android-разработке в лаборатории ИТИС КФУ. Двумя из них мы решили поделиться с вами. Лекции посвящены набирающему популярность фреймворку RxJava.

Лекция 1


В лекции рассказано про:
  • Общие идеи фреймворка RxJava, зачем это нужно и как с этим работать
  • Способы создания различных Observable и самые основные операции над ними
  • Основных операторов преобразования Observable, а также о методе cache
  • Операции соединения Observable и их последовательного / параллельного выполнения.


Презентация.

Кроме того, в рамках занятия предлагалось решить 4 практических задания, чтобы лучше освоить материал. Вы также можете попробовать свои силы (ссылка на все тестовые проекты и примеры в конце).

Лекция 2


Вторая лекция посвящена использованию RxJava и RxAndroid в реальном мире при разработке приложений.
  • Рассмотрены оставшиеся сущности Rx: Subscription, Subject, Schedulers и их предназначение
  • Различные варианты построения архитектуры приложения с RxJava
  • Рассказаны библиотеки, использующие и предназначенные для RxJava: trello-lifecycle, RxBinding, RxPermissions.


Презентация.

В рамках занятия было 2 практических задания: одно на распараллеливание и управление запросами, второе, более общее, построение простой архитектуры с RxJava и периодическое обновление данных с сервера.

Ссылка на гитхаб

Комментарии (3)


  1. xGromMx
    14.12.2015 16:23
    +1

    Не только по Java, вот от меня xgrommx.github.io/rx-book/content/resources/articles/index.html#rx


  1. burjui
    14.12.2015 21:20
    +2

    Мне кажется, не лишним будет объяснить студентам истоки Observable, а именно идею «инверсии» Iterable относительно управления потоком данных. Главная идея создателя Rx Эрика Мейера (Rx зародилась в Microsoft) была в том, чтобы сделать из Iterable, который представляет собой модель pull (мы сами запрашиваем данные), нечто аналогичное, но уже представляющее модель push: данные кидаются в нас, а мы на них реагируем. Собственно, поэтому технология и называется Reactive extensions, а методы Subscriber'а onNext() onCompleted() и onError() — это push-отражение сущности итераторов.

    Впрочем, всем любопытствующим лучше обратиться к первоисточнику, если вас не смущает небольшой нидерландский акцент Эрика:
    Erik Meijer — What does it mean to be Reactive?
    https://www.youtube.com/watch?v=sTSQlYX5DU0

    Expert to Expert: Brian Beckman and Erik Meijer — Inside the .NET Reactive Framework (Rx)
    https://www.youtube.com/watch?v=looJcaeboBY


    1. Arturka
      14.12.2015 22:23
      -1

      Спасибо, действительно, стоило на этом подзадержаться. Обязательно передам ваши ссылки :)