[OTUS] Android-разработчик. Продвинутый курс [2019] [все модули] [Антон Казаков]

195

Вы научитесь:

  • Глубоко разбираться в Android SDK. Разница между junior- и senior-разработчиками в том, что первый может реализовать какую-то фичу, а второй может объяснить, что скрывается за каждой строкой кода этой фичи, найти потенциальные проблемные места и оптимизировать их.
  • Вы узнаете, что происходит внутри классов и методов Android SDK, сможете заметно ускорить свое приложение, выбрать оптимальный алгоритм шифрования для вашего приложения, и организовать безопасное хранилище секретных данных.
  • Организовывать инфраструктуру.
  • Разворачивать системы continuous integration и continuous delivery, выстраивать git flow, поднимать Docker-контейнеры и Jenkins внутри них. Научитесь внедрять и настраивать линтеры и чекстайлы для проверки качества кода. Сможете писать свои Gradle таски и плагины для автоматизации и оптимизации процессов сборки и тестирования.
  • Проектировать архитектуру приложения.
  • Вы узнаете сильные и слабые места паттернов и архитектурных решений, научитесь правильно выбирать архитектурный паттерн для вашего приложения. Освоите GoF, MV* шаблоны для Android и принципы Clean Architecture. Научитесь проектировать мультимодульную архитектуру и проводить рефакторинг legacy кода.
  • Тестировать приложения. Недостаточно просто уметь писать тесты. Важно приучиться писать надежный и протестированный код, интеграционные тесты и UI-тесты.
  • Рассмотрим популярные фреймворки для тестирования и подходы к написанию тестов.
  • Использовать современные библиотеки и фреймворки На профессиональном уровне освоите Dagger 2 и RxJava 2, сможете правильно организовывать DI в приложении с использованием Dagger 2, писать собственные операторы в RxJava и т.д.
  • Глубокое погружение в промышленную Android-разработку
    Весь курс построен на языке Kotlin
    Много практики и живого общения с преподавателями
    Глубокое изучение Gradle, Dagger 2, RxJava 2, а также процесса тестирования Android-приложений
    Выстраивание инфраструктуры «с нуля»
    Проектирование архитектуры приложений