DroDev | Мобильная разработка: мысли вслух
464 subscribers
104 photos
229 links
Обсуждаю и рассказываю как сделать жизнь разработчика в команде интересной, легкой и продуктивной.

По всем вопросам @dilix90
Download Telegram
#Android, в плане архитектуры, со временем менялся. Тут и #MVP с #Moxy, и свои реализации #MVC и т.д.

С #Android #Jetpack и #Kotlin постепенно вырисовывается путь, который Google считает верным при построении приложения. А именно мультимодульные MVVM проекты.

#ViewModel отвечает за логику и жизненный цикл бизнес сущностей. UI как обычно может быть пересоздан, а через liveData все вернется как было.

На глаза попалась интересная статья с примерами от А до Тестов: https://proandroiddev.com/android-architecture-d7405db1361c

Но не забываем, что многомодульность сделана не для того, чтобы усложнить жизнь разработчику. Она может быть полезна например для dynamic features: https://developer.android.com/guide/app-bundle/dynamic-delivery
Всякие разные DIY #Android примеры показывают хороший результат по отклику от сообщества.

И сегодня это... #Jetpack #Composer - свеженький декларативный #UI.

Наткнулся на интересный репозиторий. В нем собраны примеры и ссылки на туториалы по composer. https://github.com/Foso/Jetpack-Compose-Playground
#Google вплотную взялся за задачу «сделать жизнь #Android разработчиков проще».

Пару недель назад выкатили видео, в котором рассказали что нового и реально интересного есть в #Jetpack - наборе инструментов для андроид разработчика.

Из самого для меня интересного:

👉 #Hilt. Рекомендованная библиотека для Dependency Injection. Она построена на #Dagger, но реализует то, что обычно приходилось делать костылями. Теперь есть простой и понятный способ инжекстится в Android Framework и Jetpack library классы.
👉 Paging 3. Переписанная Paging 2 на корутинах. Вообще, попробовав раз корутины и поняв их идеологию, возвращаться к RX для простой многопоточность уже не захочется.
👉 Navigation с Dynamic feature. Сам навигационный компонент всё никак не доходят руки нормально попробовать, но выглядит интересно. Теоретически можно строить навигацию, предполагая что все экраны в наличии, а по факту динамически подгружать фичи по мере использования. Модулярность в действии.
👉 Упрощение Request #Permission. Наконец. Теперь в понятном виде, легко и непринужденно можно запрашивать Runtime Permissions. Раньше использовал RxPermissions, которые делали жизнь проще, но сейчас вообще шик.
👉 Autofill IME. Клавиатура вообще всегда была больным местом. Кстати, в андроиде, начиная с 11 с помощью WindowInsets появилась возможность (наконец!) синхронизировать контент приложения с клавиатурой. А тут еще подвезли интересный API, который позволяет отображать inline suggest в подсказках к клавиатуре.

В общем, кажется жизнь андроид разработчика налаживается 😉 https://bit.ly/3drdezJ
#Android #Jetpack тут на #SharedPreferences покусился 😱

Представил альфу #DataStore. Внутри #Kotlin #Coroutines и #Flow. Есть две реализации

👉 #Proto Datastore. Позволяет хранить типизированные объекты. Привет Protocol Buffer.
👉 #Preferences Datastore. Тут можно хранить ключ-значение.

Работа с данными асинхронна, консистентна и транзакциональна.
По ссылке там даже табличка сравнений есть. https://bit.ly/35ptvVx
#Google в последнее время знатно радует разработчиков плюшками из #Android #Jetpack. К примеру те же #ViewModel и #LiveData - лично я уже слабо представляю как можно писать приложение без них 🙈

Вы ведь в курсе про эти два божественных компонента? Если вдруг нет, в кратце написал про них статью. https://bit.ly/3i8tUhv
Благодаря поддержке Юлы, конференция #AppsLive 2020 стала бесплатной (но надо зарегестрироваться)!

Будем говорить например про #Jetpack compose от #Google, remote builds на #CI и другие крутые штуки, связанные с мобильной разработкой и не только.

Кстати, Юла – сервис объявлений, входящий в состав Mail.ru Group и обслуживаемый сотней серверов и несколькими дата-центрами. У ребят явно есть чем поделиться с их-то масштабами.

Apps Live 2020 пройдёт 21 и 22 октября и для участия необходимо зарегистрироваться 
https://appsconf.ru/moscow/2020
Подборка основных видеоуроков и статей по MAD (сумашедшим, но на самом деле просто "Modern Android Development") скилам от #Google.

Под катом все что нужно настоящему Android джедаю: #Jetpack, #Corutines, #KTX и многое другое.

#Статьи #Видео https://bit.ly/3qKRJRv