Size: a a a

Android Architecture

2020 September 20

ES

Egor Sigolaev in Android Architecture
Aleksey D.
по идее, объем оперативной может помешать, когда система будет в фоне приложение убивать на слабых девайсах
Ну да. Вот такое произошло на телефоне за 50 евро)
источник

ES

Egor Sigolaev in Android Architecture
Egor Sigolaev
Ну да. Вот такое произошло на телефоне за 50 евро)
500 мб оперативы там
источник

AD

Aleksey D. in Android Architecture
Egor Sigolaev
500 мб оперативы там
можно по процессам разносить, но стоит ли оно того - 🤷
источник

QH

Quantum Harmonizer in Android Architecture
Архитектор
Пример приложения с использованием Clean Architecture + MVP. Проект содержит 2 варианта реализации приложения:
1. Dagger 2 + RxJava 2
2. Toothpick + Корутины

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

Кстати,  это один из примеров, когда domain-модуль содержит хоть какую-то бизнес-логику, а не просто проксирование вызовов методов из презентера.

P. S. Presenter-ы и бизнес-логика уже покрыты unit-тестами. UI-тесты с Kaspesso подъедут чуть позже

https://github.com/ImangazalievM/UTair-MVP-Sample

Теги: #architecture, #github
то есть по факту это ваше
1. написать интерфейс, обмазать аннотациями
2. написать ДТО, тоже обмазать
3. создать HTTP-клиент
4. создать ретрофит с конвертером
5. написать «маппер», который разворачивает единственное поле
6. завернуть в ырыкс

можно заменить на 22 строки (с импортами!) на голом OkHttp + стриминге JSON из Android SDK
источник

QH

Quantum Harmonizer in Android Architecture
можно даже вот так вот напилить (+DSL на 23 строки)
источник

КР

Кирилл Романенко... in Android Architecture
Архитектор
Почему?)
> mvp
Подход не имеет значительных плюсов в сравнении с аналогами (mvvm, mvi)

> clean architecture
Бесполезное размазывание кода, дающее ложное чувство красивой и мощной архитектуры.

> toothpick, dagger
Я понимаю их преимущества в сравнении с koin/kodein, но всё ещё считаю, что jsr-330 устарел.
источник

KD

Konstantin Dovnar in Android Architecture
Кирилл Романенко
> mvp
Подход не имеет значительных плюсов в сравнении с аналогами (mvvm, mvi)

> clean architecture
Бесполезное размазывание кода, дающее ложное чувство красивой и мощной архитектуры.

> toothpick, dagger
Я понимаю их преимущества в сравнении с koin/kodein, но всё ещё считаю, что jsr-330 устарел.
> mvp
>> Подход не имеет значительных плюсов в сравнении с аналогами (mvvm, mvi)

Отличный подход для небольших приложений. Без бойлерплейта в обработке логики, + так же лёгок в рефакторинге.

> clean arch
>>Бесполезное размазывание кода, дающее ложное чувство красивой и мощной архитектуры.

Всё ещё принимаешь за "клин" популярную трёхслойную архитектуру, которая лишь построена по канонам чистоты, но не является её определением.
А сам, на деле, пользуешься его подходами и радуешься, когда всё сделано по клину.

upd. ох уж это форматирование телеги:)
источник

А

Архитектор in Android Architecture
Quantum Harmonizer
то есть по факту это ваше
1. написать интерфейс, обмазать аннотациями
2. написать ДТО, тоже обмазать
3. создать HTTP-клиент
4. создать ретрофит с конвертером
5. написать «маппер», который разворачивает единственное поле
6. завернуть в ырыкс

можно заменить на 22 строки (с импортами!) на голом OkHttp + стриминге JSON из Android SDK
Я же говорю: "Код написан в 2017 году"
источник

А

Архитектор in Android Architecture
И на Java
источник

А

Архитектор in Android Architecture
Не всё успел отрефакторить, просто сконвертил из Java
источник

КР

Кирилл Романенко... in Android Architecture
Konstantin Dovnar
> mvp
>> Подход не имеет значительных плюсов в сравнении с аналогами (mvvm, mvi)

Отличный подход для небольших приложений. Без бойлерплейта в обработке логики, + так же лёгок в рефакторинге.

> clean arch
>>Бесполезное размазывание кода, дающее ложное чувство красивой и мощной архитектуры.

Всё ещё принимаешь за "клин" популярную трёхслойную архитектуру, которая лишь построена по канонам чистоты, но не является её определением.
А сам, на деле, пользуешься его подходами и радуешься, когда всё сделано по клину.

upd. ох уж это форматирование телеги:)
> Отличный подход для небольших приложении. Без бойлерплейта в обработке логики + лёгок в рефакторинге

Ок, давай опустим что мне и mvvm не нравится. С mvvm меньше кода за счёт отсутствия интерфейса view и упрощения работы с жц (VM, SavedStateHandle) (да, я говорю о конкретной имплементации паттерна в андроиде). Я понимаю, что mvvm без датабиндинга не является каноничным, но (имхо) в целом-то похуй. Я пробовал и с ним и без него - без него лучше (потому что хмл-ный датабиндинг говнище).

> Всё ещё воспринимаешь за "клин" популярную трёхслойную архитектуру

Я ещё в прошлый раз понял, что ты пытался сказать об истинном клине. Я сейчас набрасывал именно на трёхслойку.
источник

IN

Ilya Nikolaev in Android Architecture
Konstantin Dovnar
> mvp
>> Подход не имеет значительных плюсов в сравнении с аналогами (mvvm, mvi)

Отличный подход для небольших приложений. Без бойлерплейта в обработке логики, + так же лёгок в рефакторинге.

> clean arch
>>Бесполезное размазывание кода, дающее ложное чувство красивой и мощной архитектуры.

Всё ещё принимаешь за "клин" популярную трёхслойную архитектуру, которая лишь построена по канонам чистоты, но не является её определением.
А сам, на деле, пользуешься его подходами и радуешься, когда всё сделано по клину.

upd. ох уж это форматирование телеги:)
Только писать тесты для MVP не оч приятно. Лучше использовать что-то что близко к функциональному программированию.
источник

А

Архитектор in Android Architecture
Ilya Nikolaev
Только писать тесты для MVP не оч приятно. Лучше использовать что-то что близко к функциональному программированию.
А на чём писали тесты?
источник

IN

Ilya Nikolaev in Android Architecture
На junit
источник

IN

Ilya Nikolaev in Android Architecture
Если про юниты речь.) какие альтернативы?)
источник

А

Архитектор in Android Architecture
Spek + Mockk
источник

А

Архитектор in Android Architecture
На обычном JUnit в целом неприятно тесты писать
источник

IN

Ilya Nikolaev in Android Architecture
Спек это тот же junit5
источник

IN

Ilya Nikolaev in Android Architecture
С сахарком.)
источник

IN

Ilya Nikolaev in Android Architecture
mockk используем. Но все равно используя mvp у тебя все тесты в спаях .
источник