Size: a a a

Android Developers

2021 September 20

ДР

Даниил Рандиков... in Android Developers
Гугли - это бизнес логика
источник

В

Виктор in Android Developers
Ну по сути у меня они итак как константы в префсах храниться будут. А под счётчиком имеете ввиду просто посчитать свои интенты в хранилище и добавить единицу?
источник

ДР

Даниил Рандиков... in Android Developers
И вряд ли по твоему коду дадут нормальную критику. Сколько людей столько и мнений. Главное чтоб код был читабелен, масштабируемым и покрывался тестами
источник

ОА

Оганнес Асатрян... in Android Developers
жги
источник

ОА

Оганнес Асатрян... in Android Developers
когда не за свое это уже порицается. если вы понимаете о чем я
источник

СП

Сергей П. in Android Developers
Не, я и на джаве писал так что null можно получить только от андроид фреймворка или методов джавы которые иначе не умеют и дальше след.строчки он не идет
источник

ВМ

Валерий Маевский... in Android Developers
Да, только считать не обязательно, можно же просто "последний + 1"
источник

СП

Сергей П. in Android Developers
Инт раз в минуту ... ну на пару тыс.лет хватит.
источник

В

Виктор in Android Developers
Ну а с котлином вам студия мозги все проест, если не будете думать о правильном взаимодействии с nullable-переменными :) Причем там для потенциальных null от платформы специальное обозначение типа с восклицательным знаком.
источник

DA

Dmitry Aleksandrovic... in Android Developers
View (слой Presentation) - отображение элементов на экране, слушатели кнопок / LiveData.

ViewModel (слой Presentation) - дарит нам свой viewModelScope и нужна для вызова методов из UseCase. (не выполняет никакую логику, просто дёргает методы из UseCase)

UseCase (слой Domain) - выполняется вся бизнес-логика. Например, пользователь вводит почту и пароль и в UseCase проверяем на валидность. Если всё плохо, то по LiveData, к примеру, присылаем ошибку и отображаем пользователю. Если все поля валидные, делаем запрос и по той же LiveData присылаем результат (залогинился или нет) и делаем соответствующие действия, например, переводим на главный экран в случае success и заодно сохраняем обновленную JWT пару. Всё это в UseCase.

Repository (слой Data) - наш UseCase обращается к Repository потому что вся связь с БД удаленной или локальной находится именно тут. Например, твой метод логина.
источник

В

Виктор in Android Developers
Логично. Спасибо)
источник

DA

Dmitry Aleksandrovic... in Android Developers
Еще мелочь, но Котлин позволяет. Перед viewModelScope ставь "=". Это для эстетики))
источник

СП

Сергей П. in Android Developers
Если бизнес логики (принятия решения как отреагировать на тык в экран выдачей запроса  в репозитарий и обратно) на 2 строки кода  - то конечно не хочется городить целый слой для проброски туда id а обратно значения.
источник

ОА

Оганнес Асатрян... in Android Developers
этапы становления хорошим разрабом
не понимает зачем слой бизнес логики
понимает
источник

СП

Сергей П. in Android Developers
3..понимает зачем но в его проектах там пустышки пробрасывающие запросы 4. В его проектах заепистая логика и приходится еще слои интеракторов мутить 5. А теперь все это еще на 40 модулей делим
источник

ОА

Оганнес Асатрян... in Android Developers
как твои дела с котлин?
источник

СП

Сергей П. in Android Developers
Норм пошел. Но пока джава ванлав. На ней пишешь поймав "поток". А тут башка устает.

Ну и синтетиков нет, зато есть objects любимые!
источник

СП

Сергей П. in Android Developers
А код без необходимость юзать при конверсии ? и lateinit я и так писал давно
источник

ОА

Оганнес Асатрян... in Android Developers
просто пиши на котлин как ты писал на джава
источник

A

Andrey in Android Developers
ненадо
источник