Android

Как начинающему Android-разработчику прокачать свои навыки: 5 open source проектов для изучения

Android Architecture Blueprints v2

1

Это официальное приложение Google, которое демонстрирует использование некоторых ключевых компонентов Jetpack для создания устойчивого приложения. Это хорошая отправная точка для понимания того, как создавать архитектуру приложения. – Язык: Kotlin – Архитектура: MVVM – Инъекция зависимостей: Dagger – Навигация: Jetpack Navigation – Юнит-тесты: JUnit and Espresso

Plaid 2.0

2

В первой версии Plaid (созданный в 2014 году) был приложением Ника Бутчера, где он демонстрировал, как материальный дизайн и анимации могут улучшить приложение для Android. После нескольких лет улучшений приложение пришло к тому, что стало эталонным приложением и в 2019 году Ник переместили репозиторий Plaid в официальный репозиторий Google. Plaid 2.0 все еще находится в стадии интенсивной разработки, что дает вам возможность узнать, как приложение переносится на современную архитектуру и Kotlin. – Ключевые особенности: материальный дизайн, темы, темный режим, многомодульность, анимации – Язык: Kotlin – Архитектура: MVVM – Инъекция зависимостей: Dagger – Навигация: Plain (на интентах) – Юнит-тесты: JUnit и Espresso

Sunflower

3

Это еще одно официальное приложение Google, которое демонстрирует множество компонентов Jetpack в одном приложении. Это простое приложение, которое отлично подходит для обучения. – Ключевые особенности: темный режим, анимации, Room (база данных), WorkManager – Язык: Kotlin – Архитектура: MVVM (LiveData, ViewModel, Lifecycle, Data Binding) – Инъекция зависимостей: Dagger – Навигация: Jetpack Navigation (Single Activity) – Юнит-тесты: JUnit и Espresso

CatchUp

4

Это приложение агрегирует статьи и посты с различных сайтов, таких как Hackernews, Medium, Reddit, Slashdot, Dribble, Uplabs и так далее. Это новое приложение от Зака Свирса, который потратил значительное время на его разработку. Архитектура приложения основана на приложениях Plaid и U+2020. CatchUp активно разрабатывается, вы можете клонировать и собрать локально, чтобы опробовать его работу. – Ключевые особенности: темный режим, анимации, Advanced Dagger – Язык: Kotlin – Архитектура: мне неизвестна, надо изучить – Инъекция зависимостей: Dagger – Навигация: Basic (интенты) – Юнит-тесты: JUnit

Showcase

5

Это еще один пример приложения сообщества, который я недавно обнаружил. Приложение разработано Игорем Войдой, автором книги «Android-разработка с Kotlin». Приложение демонстрирует множество лучших практик. – Ключевые особенности: Kotlin и корутины, Gradle KTS, статический анализ кода – Язык: Kotlin – Архитектура: Clean Architecture – Инъекция зависимостей: нет (вручную) – Навигация: Jetpack Navigation – Юнит-тесты: JUnit