Комментарии 18
Спасибо за статью.
Для новичков на стероидах?)
Спасибо за комментарий! Ну можно и так сказать, для тех кто уже чуть в теме) Конечно, если только начинаешь путь в программировании, статья может показаться сложноватой. Но стоит пройти пару кодлабов от Google и хотя бы немного почитать про SOLID, Clean Architecture, MVVM и MVI, и всё станет намного понятнее. Так что, не такая уж она и страшная, главное — начать! 💪
Весь ужас в том, что идёт жуткая инфляция знаний. То что раньше считалось нормой для мидла теперь спрашивают с Джуна, с мидла спрашивают как с сеньера, а на сеньера лид перекладывает свою работу - ему никогда, он руководит сразу M командами. Итог каждый рвет жопу хз зачем)
Чтобы не было лишних рекомпозиций, просто не используйте Компоуз
Как бы нам всем не хотелось избежать лишних рекомпозиций, сейчас все переходят на Compose, это уже мастхев в Android-разработке. На Compose приложения работают быстрее, APK меньше по размеру, а скорость сборки выше. Если интересно, в официальной документации есть сравнение View и Compose.
Какие крупные и популярные production приложения написаны на Compose?
Слушайте, я здесь не для того, чтобы убеждать вас в преимуществах Compose 😊. Вся информация и сравнения уже давно доступны в интернете и официальной документации. Если View вам ближе — вполне понимаю, и, наверное, эта статья просто не для вас.
А может король-то голый? Реально, очень практичный вопрос - какие из крупных или популярных приложений написаны целиком на Compose?
Сам Гугл написал только NowAndroid приложение и какую то часть Play Market. Это все, что я слышал.
Вопрос хороший, но давайте посмотрим на ситуацию шире. Compose — относительно новая технология, и переход крупных проектов на него требует времени и значительных ресурсов. Многие компании тестируют Compose на отдельных модулях или новых фичах, чтобы оценить его эффективность.
К примеру, приложения от Google, такие как Jetpack Compose Playground и Now in Android, используют Compose в полном объеме. Кроме того, есть информация, что такие компании, как Airbnb и Lyft, постепенно интегрируют Compose в свои проекты.
Стоит учитывать, что крупные компании не спешат полностью переписывать приложения, так как это дорого и рискованно. Однако тренд на использование Compose очевиден, особенно для новых проектов или модулей. Его преимущества — ускоренная разработка, меньший вес APK и улучшенная поддержка UI — делают его мастхэвом для Android-разработчиков.
Можете также посмотреть вакансии на рынке и в 99% случаев требуют навыки Compose.
Room разве легально доступен российским разработчикам?
А что с ним не так? )
Честно говоря меня этот вопрос сбил меня с толку... Ничего об ограничении доступа к каким-либо вообще библиотекам не слышал и надеюсь никогда не услышу 😅
Спасибо за статью! Пытаюсь освоить чистую архитектуру, пока что получается туго :) Для изучения делаю проект, но многомодульный. Единственное не могу понять, как в этом случае DataSource встроить. Условно есть модуль core/domain, где лежат модели и интерфейсы репозиториев, модуль database с реализацией Room и модуль data, в котором идёт реализация интерфейсов и маппинг из Room entity в нормальные модели. И в этом случае непонятно, где должен лежать интерфейс для DataSource и его реализация, ведь в нём уже должны использоваться модели из core/domain, а database о них, как мне кажется, знать не должен, либо я неправильно понимаю.
Рад, что статья вам понравилась! Если я правильно понял, вы хотите использовать DataSource
в модуле database
. На мой взгляд, DataSource
больше относится к слою data
, так как он отвечает за реализацию доступа к данным из БД.
Room entity
я бы разместил в модуле database
, так как это модель, специфичная для работы с Room
и не относящиеся к доменной логике.
Таким образом, модуль database
остается максимально изолированным и "чистым", а data
берет на себя ответственность за интеграцию данных. Надеюсь, это поможет лучше структурировать ваш проект!
Добрый день. Подскажите core, create_and_update_note и т.д это модули или просто пакеты?
Как написать Android приложение, которое не будет стыдно положить в портфолио. Гайд для новичков в Android разработке