App Development
April 20, 2021
e-legion рекомендует :: подборка для Android-разработчика
Привет всем любителям Android-разработки! Ловите подборку на почитать, послушать, посмотреть от руководителя отдела Android-разработки Михаила Баранникова. Самое время прокачать скилы, пока на улице дождик. Have fun!
- Курсы на Coursera.
- Курсы на Udacity.
- Академия e-legion.
- Kotlin https://kotlinlang.org/ и конкретно https://kotlinlang.org/docs/reference/
- SOLID. Прочитать, понять и простить.
- «Алгоритмы. Построение и анализ», Томас Х. Кормен, Чарльз И. Лейзерсон, Рональд Л. Ривест, Клиффорд Штайн.
- «Совершенный код. Мастер-класс», Стив Макконнелл.
- «Чистая архитектура. Искусство разработки программного обеспечения», Мартин Роберт.
- «Kotlin in Action» / «Kotlin в действии», Исакова С., Жемеров Д.
- «Искусство программирования», Дональд Кнут — для любителей пожестче.
- «Приемы объектно-ориентированного проектирования. Паттерны проектирования», Эрих Гамма, Джон Влисидис, Ричард Хелм, Ральф Джонсон.
- «Идеальный программист. Как стать профессионалом разработки ПО», Роберт Мартин.
- «Мифический человеко-месяц», Фредерик Брукс.
- «Head First. Паттерны проектирования», Эрик Фримен, Элизабет Робсон.
- «Рефакторинг. Улучшение существующего кода», Мартин Фаулер.
- «Программист-прагматик. Путь от подмастерья к мастеру», Дейв Томас, Энди Хант.
- «Чистый код. Создание, анализ и рефакторинг», Роберт Мартин.
- «Реактивное программирование с использованием RxJava», Нуркевич, Кристенсен.
- Plaid (https://github.com/android/plaid) приложение сделанное для демонстрации многомодульности.
- Архитектурные примеры от Google (https://github.com/android/architecture-components-samples) — смотрим, вдохновляемся и пытаемся создать свое.
- Документация наше все (https://developer.android.com/) — изучаем и курим документацию. Есть гайды, кодлабы, сэмлы и все. что может понадобиться на начальных этапах. Ну а для повседневной работы есть java doc.
- Habr (https://habr.com/)) — следим за такими компаниями как e-legion, RedMadRobot, Касперкский, Авито, Badoo и другие.
- Medium (https://medium.com/) — куча статей, начать можно с https://medium.com/androiddevelopers и далее искать уже под свои вкусы.
- VC (https://vc.ru/) — следим за компаниями.
- Android Developers Blog (https://android-developers.googleblog.com/) — блог от Google.
- Блог про котлин от JB (https://blog.jetbrains.com/kotlin/).
Любителям послушать и посмотреть:
- AndroidDevPodcast (https://androiddev.apptractor.ru/).
- Android Developers (https://www.youtube.com/user/androiddevelopers).
- Android Dev Summit 2019 (https://www.youtube.com/watch?v=5jJ-e278BFY&list=PLWz5rJ2EKKc_xXXubDti2eRnIKU0p7wHd).
- Смотрим в разделе конференции и ищем записи с них на YouTube.
Любителям архитектурных холиваров:
- MVP / MVVM / MVI / Clean Architecture — смотрим какие архитектуры бывают, чем они отличаются и какие задачи решают.
- OkHttp (https://square.github.io/okhttp/) + Retrofit (https://square.github.io/retrofit/) — библиотеки для работы с сетевыми запросами. Куда же мы без них.
- Dagger (https://github.com/google/dagger) / Koin (https://insert-koin.io/)) / Любой другой DI по вкусу — DI нам нужен и силен. Перед тем как тянуть эти библиотеки к себе поймите зачем же DI вам так нужен.
- Jetpack (https://developer.android.com/jetpack) — работа с камерой, БД, фрагментами, жизненным циклом, навигацией и многое другое от Google.
- RxJava (https://github.com/ReactiveX/RxJava) — реактивщина, это либо любовь либо ненависть. Решать вам.
- Kotlin Coroutines (https://github.com/Kotlin/kotlinx.coroutines) — альтернатива Rx для работы с много поточкой. Для реактивщины можете использовать Flow.
- AdapterDelegates (https://github.com/sockeqwe/AdapterDelegates) — адаптеры для RecyclerView через композицию.
- Epoxy (https://github.com/airbnb/epoxy) — если хотите RecyclerView везде и для всего вам сюда.
- Kaspresso (https://github.com/KasperskyLab/Kaspresso) — отличная библиотека для UI тестирования под Android
- Android-Image-Cropper (https://github.com/ArthurHub/Android-Image-Cropper) — кропаем фотки как нам надо.
- Подборка анимаций https://github.com/Ramotion/android-ui-animation-components-and-libraries.
- Mockito (https://github.com/mockito/mockito) — библиотека для юнит тестов.
- Spek (https://github.com/spekframework/spek/) — немного удобства для юнит тестов.
- Cicerone (https://github.com/terrakok/Cicerone) — аналог навигации от Google.
- Zxing (https://github.com/zxing/zxing) — сканирование бркодов.
- Gson (https://github.com/google/gson) / Moshi (https://github.com/square/moshi) — читаем JSON с помощью аннотаций.
- Lottie (https://github.com/airbnb/lottie-android) — супер библиотека для анимаций. Вам как программисту почти ничего не надо делать. Диайзнер рисует, выгружает в JSON, импортируем в проект и радуемся.
- MPAndroidChart (https://github.com/PhilJay/MPAndroidChart) — библиотека для отображения графиков.
- Material-Animations (https://github.com/lgvalle/Material-Animations) — material animations, transitions и все, что с этим связано.
- DeepLinkDispatch (https://github.com/airbnb/DeepLinkDispatch) — библиотека для дип линков.
- Gitlab CI / Jenkins / TeamCity — ставим, смотрим и разбираемся как этим пользоваться.
- Интеграции с Redmine / Jira / TestLink / Slack. Слава gradle и его плагинам, а также плагинам на CI, которые упрощают подобные интерграции. При этом можно всегда написать свой.
- Docker — увеличиваемся в размерах до промышленных масштабов.
- Weblate — отличный ресурс для приложений с поддержкой кучи языков. Упрощает переводы и позволяет работать вместе переводчикам и программистам. Разработчикам git, переводчикам - веб интерфейс.
- Checkstyle, Detekt, Ktlint — статические анализаторы кода. Помогают больше не смотреть на code style и концентрироваться на действительно важных аспектах code review.
- Автотесты, тесты и жизнь после тестов. Путей масса. Единого для всех пути нет. Начинаем с малого. Запускаем юнит тесты, потом UI, думаем как с этим жить и как использовать в дальнейшей разработке полученную информацию.
- Jacoco, Sonarcube — посмотрите должно пригодиться для пары пунктов выше.
- «Как пасти котов», Рейнвотер Дж.Ханк.
- «От разработчика до руководителя», Фурнье Камиль.
- «Идеальный руководитель Адизес», Адизес И.
- «Антихрупкость. Как извлечь выгоду из хаоса», Нассим Николас Талеб.
- В довесок почитать про делигирование, мотивацию, выгорание, целеполагание, решение конфликтов и one-to-one встречи. Для начала должно хватить.
Любителям прекрасного, необычного и для поиска вдохновения:
- Dribbble (https://dribbble.com/tags/mobile) — смотрим, что творят дизайнеры. Ругаемся $%#@$#@%&^. Выдыхаем. Думаем, как бы это реализовать.