от Manifest-компонентов?»
Что значит «должна»? Да, вы можете создать такой контракт в своей команде. Да, это даже кто-то мог написать. Правда я не видел ничего подобного в источниках, к мнению которых я прислушиваюсь.
«Компонент в presentation-е - через логику в domain-е - оперирует платформенными данными в data
не?»
Это подход, который имеет место на жизнь. Но он точно «НЕ» единственно верный.
«Ну всё за тем же... иметь структурированный и упорядоченный проект.»
Для того, чтобы иметь структурированный проект, нужно иметь некий контракт, или договорённость, в команде. Вариант «все компоненты Андроида кидаем в presentation слой» - работает. Но точно так же будет работать и вариант «все сервисы и ресиверы складываем в data».
«Разработчик сам должен определять как внутри реализовать сложную логику его апа - соблюдая при этом контракт с framework.»
Самая важная мысль в этом посте. И она не говорит о том, что все компоненты однозначно надо кидать в presentation.
«в не зависимости от того "каким смыслом" мы наделим этот компонет - он использует интеракторы а они - репозитории»
Внешние фреймворки могут использовать репозитории. Репозитории могут использовать бизнес логику. Бизнес логика может иметь произвольный «input port», через который она будет получать события для обработки пользовательских возможностей (use case). Поэтому «presentation» не является необходимым условием в данной схеме.
И лично моё мнение. Класть компонент, который явно не виден пользователю, в слой «presentation» - это противоречие тому самому пункту Дядюшки Боба о «Кричащей архитектуре».
Потому что это ни разу не очевидно.
Ну вот... то есть в основном - это вопрос "подхода" и "тех авторитетных мнений которые вас/нас вдохновляют". В обоих случаях - это не противоречит осн принципам. И работать будет. (На счёт "кричащей" - не могу сказать... к сожалению, термин пока не настолько популярен чтобы можно было ознакомиться бесплатно и не посещая конференции ) Еще хотелось уточнить по диаграмме я правильно понимаю - главное разногласие..... (позвольте приаттачу)
Обсуждают сегодня