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

Всем привет, реализую приложение согласно clean architecture, сейчас нужно сделать

получение геолокации, не понимаю как это реализовать согласно чистой архитектуре, к каким слоям что отнести?

25 ответов

369 просмотров

попробуй без чистой архитектуры сделать геолокацию )

Согласно clean architecture рано или поздно она становится dirty spaghetti architecture

зависит от того какие слои ты выделил, это явно инфраструктура

Neverewer
data, domain, presentation и widgets

presentation и widgets - одно и то же

Если фиче не нужон этот ваш клин аркитектуре, то на кой он нужон в фиче?

TriXee
Если фиче не нужон этот ваш клин аркитектуре, то н...

Это тонкая грань, которую, если переступишь, приведёт тебя в premature optimization

Andrey Terekhin
путь в бездну)

А после бездны только тех. долг

TriXee
А после бездны только тех. долг

легче потом бульдозером все снести и сделать заново с уже известными постхотелками)

TriXee
Я вставлю здесь мем *haha, classic*

ну а что) иногда это выходит дешевле)

1) сделайте чистый доменный слой для геолокации и события из него 2) слелайте слой приложения – сервис, который будет дергать доменный, получать от него события и эммитить их в шину событий геолокации и при необходимости через репозиторий хранить. 3) сделайте инфраструктурный слой, который быдет взаимодействовать с ОС и вызывая методы сервиса в слое приложения изменять домен 4) сделайте вью-модель, которая подпишется на шину событий о геолокации и будет получать данные через сервис уровня приложения и преобразовывать для вьюхи 5) сделайте вьюху 6) заинжектите вью-модель 7) сделайте DI в котором все увяжите друг с другом 😍 Если интересно, покажу как у меня

Andrey Terekhin
ну а что) иногда это выходит дешевле)

Хотел бы я сказать, что это неправда, если бы я был молодой и неопытный и с надеждами на будущее…

TriXee
Хотел бы я сказать, что это неправда, если бы я бы...

менеджеры проектов до фазы принятия часто рубят хвост по частям, вместо принятия неизбежного

сделайте блок и один репозиторий для доступа к геолокации все

tdesc
сделайте блок и один репозиторий для доступа к гео...

А можно ещё проще, выбросить поганый клин аркитектуре и писать mvc

tdesc
нет нельзя mvc на флаттер это говнокод

Чувствуешь этот вкус, да? А ещё можно раскидать всё по модулям, ммм, в разные репозитории… кайф

Evgeny Gazdovsky
1) сделайте чистый доменный слой для геолокации и ...

можете это реализовывать разными методами, использовать блок, провайдер, инхериты, гет_ит и пр. А можете сделать без них, на голом флаттере и принять решение нужны вам эти зависимости или нет, я остановился на провайдере, например, только

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
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
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта