Курс по архитектуре клиент-серверных андроид-приложений с RxJava

Введение в курс

Цели курса:

  • Изучить проблемы и вопросы, возникающие при разработке современных клиент-серверных приложений, а также способы их решения.
  • Познакомить участников с наиболее актуальными и функциональными подходами к построению архитектуры приложений.
  • Научиться применять рассмотренные подходы на практике и реализовывать качественные, стабильные и протестированные приложения

Формат курса

Курс состоит из 8 занятий. Каждое занятие рассчитано на 2-2,5 часа и включает в себя лекцию по рассматриваемой теме примерно на 60-80 минут, практику на 40-50 минут и, возможно, дополнительную лекцию на 15-20 минут.

Практика включает в себя либо работу над отдельным проектом для данной темы.

Рассматриваемые темы:

Дополнительные темы:

Список лекций курса:

  1. Лекция 1. Введение в архитектуру клиент-серверных андроид-приложений
  2. Лекция 2 Курса по архитектуре андроид-приложений. Паттерны A/B/C
  3. Лекция 3 по архитектуре андроид приложения. Знакомство с RxJava
  4. Лекция 4 по архитектуре андроид приложения. Clean Arcitecture
  5. Лекция 5 по архитектуре андроид приложения. Паттерн MVP
  6. Лекция 6 по архитектуре Android. Unit тестирование. Test Driven Development
  7. Лекция 7 по архитектуре Android. Инструментальное и UI тестирование. Espresso. Dagger 2
  8. Лекция 8 по архитектуре Android. Data Binding + MVVM
  9. Лекция 9 по архитектуре Android. Заключение

Разрабатываемые приложения:

  • На первых двух занятиях будет реализовано погодное приложение с использованием лоадеров и паттернов A/B/C. Используемое API.
  • На 3-4 занятиях будет реализовано приложение для получения информации о самых интересных фильмах с помощью RxJava и подходов Clean Architecture. Используемое API.
  • На 5-7 занятиях будет реализовано приложение для гитхаба с использованием MVP, RxJava и с написанием тестов. Используемое API.
  • На 8 занятие для просмотра информации о планетах с использованием DataBinding и паттерна MVVM. Используемое API.

Используемые средства для разработки:

  • Android Studio в качестве IDE, stable channel (текущая версия 2.3). Скачать можно здесь.
  • Gradle в качестве системы сборки. Используется версия 3.0. Скачать можно здесь (complete distribution).

Используемые библиотеки для разработки:

  • Все стандартные support библиотеки.
  • OkHttp версии 3.4.1 и Retrofit версии 2.1.0 для работы с сетью.
  • RxJava версии 1.1.10 и RxAndroid версии 1.2.1 для работы с многопоточностью.
  • Realm в качестве основной базы данных.
  • ButterKnife для работы с View.
  • Picasso для работы с изображениями.
  • Retrolambda для использования лямбда-выражений.
  • Альтернативная библиотека для работы с БД для одного занятия.
  • Остальные используемые библиотеки будут при необходимости рассмотрены в ходе курса.

Все примеры кода хранятся в репозитории. Вы можете убедиться, что у вас все настроено корректно и готово к работе, запустив проект TestApp.

Ссылка на источник

Коментарі: 11
Додати коментар