214 похожих чатов

Вот добавляю компоуз в зависимости и мысль такая посетила:

а если у меня куча фича модулей и в каждом своя верстка под фичу, то мне в каждый модуль что-ли подтягивать в градл зависимости? Или даже в этом случае UI размещать для всех фич в отдельном ui-модуле. Тогда компоуз будет в градлах только app и ui модуль?

14 ответов

28 просмотров

Зависимости добавляются в каждый модуль.

Turalllb-Turalll Автор вопроса
Алексей Соловьев
Зависимости добавляются в каждый модуль.

а никаких способов убрать этот дублирующийся код нет? наверно можно написать какой-то градл скрипт

Turalllb Turalll
а никаких способов убрать этот дублирующийся код н...

да, можно написать свой и скрипт, и грэдл плагин и в нём можно что угодно сделать, хоть так чтобы в build.gradle было всего 3 строчки

Turalllb-Turalll Автор вопроса
Дмитрий
да, можно написать свой и скрипт, и грэдл плагин и...

понял, с плагином будет сложнее, но как скрипт писать разберусь , спасибо

Turalllb-Turalll Автор вопроса
Алексей Соловьев
Какой в этом смысл?

мм не понял вопрос, чтобы зависимости в нескольких модулях не дублировать.

Turalllb Turalll
понял, с плагином будет сложнее, но как скрипт пис...

да там и то, и то просто есть готовые плагины, хороший плагин видел у Аркадия, который разработчик Decompose и MVIKotlin я лично его исходники смотрел и написал себе свой плагин со своими конвенциями, там не сложно

Turalllb-Turalll Автор вопроса
Дмитрий
да там и то, и то просто есть готовые плагины, хор...

стыдно, но с градл я немного теряюсь, надо пару материалов посмотреть

Turalllb Turalll
а никаких способов убрать этот дублирующийся код н...

Можно использовать бандлы из Gradle version catalog

Turalllb-Turalll Автор вопроса
Алексей Соловьев
Зависимости добавляются в каждый модуль.

а это увеличивает вес сборки, если в каждом модуле зависимости? или все это дело как-то мержится

Turalllb Turalll
а это увеличивает вес сборки, если в каждом модуле...

градл смотрит на весь список зависимостей в проекте, смотрит, какие версии требуются, резолвит какую-то одну итоговую версию, и её добавляет в итоговый артефакт. Дублирования зависимостей разных версий не будет, но будет какая-то версия, которая может даже отличаться от всех указанных вами версий в проекте, если какая-то зависимости транзитивно хочет затащить более новую версию. Gradle Build Scan, вкладка dependencies, расскажет больше)

Turalllb-Turalll Автор вопроса
Алексей Ершов
градл смотрит на весь список зависимостей в проект...

да, такие я результаты и получал когда изучал как все это дело резолвится, но вот для разных модулей я этого не делал и удивился, когда app модуль зависит от ui модуля, в ui модуле есть компоуз, а в app он не появился, пока не прописал зависимости и туда тоже.

Turalllb Turalll
да, такие я результаты и получал когда изучал как ...

почитайте про api vs implementation, это как раз про транзитивные зависимости модулей

Turalllb-Turalll Автор вопроса
Алексей Ершов
почитайте про api vs implementation, это как раз п...

аа, понял, значит именно api project мне подтянул бы зависимости подлюченного модуля

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта