Как стать автором
Обновить

Направо пойдешь — в бэкенд придешь, налево — в мобилки…

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров9.4K
Всего голосов 11: ↑11 и ↓0+11
Комментарии8

Комментарии 8

На Android хоть нету большого количества запросов, но какой-нибудь ui тоже может заставить поломать голову - всякие рисовалки, до rv свои варианты кто-то пилил, drawable всякие по типу gif из glide, shimmer, progress view. Да и некоторые свои loader пишут (не все ktor/retrofit используют), а на сервере вроде это всегда часть фреймворка. В общем и логики хватает - кеширование всякое, некоторые автономные приложения до сих пор пилят.

off Посмотрев назад на все годы что являл на свет Андроид, создается впечатление сырого продукта, но который устроил и покупателей и производителей железа. Возможно в этом причина короткого срока поддержки железа - новая версия Андроида требует трудоемких вложений в поддержку старых моделей.

А можно подробней про бизнес логику в мобилке? Мне как бэкендеру старой закалки - все эти андроиды, айосы, браузеры - это условные 25-33% всего продукта. Потому что это по сути только слой презентации. И никакой бизнес логики там быть не должно.

Кэш - да, логика отрисовки полей и кнопок например с учетом прав доступа - да. Но сам скоуп прав должен прийти уже подготовленным с сервера + сервер на каждом обратном запросе должен проверять права сам еще раз и не доверять. Иначе это дыра в безопасности.

То есть фраза "бизнес-логика на клиенте" для меня звучит как "сервер - это прокси к базе данных и все кишки наружу".

У нас например был оффлайн режим, где приложение работало без сервера до просрочки токена, а оно считало поездки и метрики по таблице с 40 тысячной математикой. Для Бека это не много, но для мобилки прилично

Хмм, уже лет 5-10 как бизнес логика есть во всех современных клиентах :)
Веб фронтенд тут не исключение.

Более того, сейчас может быть, что собственный бэкенд это только тонкая прослойка или его вообще нет.

В мобилках под бизнес-логикой понимают немного другое

Помимо бэкенда есть ещё источники данных (дата-слой): кэши и базы данных. Что-то хранится внутри приложения, чтоб облегчить нагрузку на бэк, что-то просто существует для конкретного устройства и нигде больше.

Слой отображения: это отображение пользователю и первичная обработка нажатий, иногда базовая валидация данных (те случаи, когда пользователь сразу должен увидеть, что ввел что-то неправильно)

А вот бизнес-слой существует не в каждом приложении и нередко опционален. В нем различные объединения нескольких запросов их разных сервисов и методов, в нем проверки сложнее "ваш пароль должен содержать...", различные расчеты, если это какие-то агрегаторы.

Мой лучший пример - ипотечный калькулятор в банке: отправлять запрос на каждых чих пользователя - большая нагрузка, поэтому мобилка дублирует у себя все логику расчетов, ставок и прочего, а от Бэка ждёт только список доступных программ для пользователя

P.s. есть ещё server-driven ui, в котором мобилка максимально тупая, но это отдельная история

В блокчейн приложениях обычно перекос по бизнеслогике именно в сторону фронтенда.
Первый раз в жизни я увидел фронт, который посылал запросы непосредственно в БД (блокчейн).
И да, для блокчейн приложений жить с "кишками наружу" - обычное дело.

Также имею опыт в :

Web (angular), android , бекенд (golang).

И задумываюсь о дальнейшем развитии карьеры - куда двигаться?!

Андройд жутко бесит тем, что там все меняется и ты просто просираешь свои знания... Compose это будущее разработки? А вы пробовали на нем сделать большой проект? Там геммороя не мало и ещё не факт, что гугл его не убьет в пользу flatter. С мобилкой реально какой то дурдом...

С Веб-фронт только недавно начал работать на Angular. Пока не понятно, нравится или нет)).

А бекенд да - всякая работа с данными по сути.. Меняется все не так часто и технологии и принципы такие более матёрые.

Дайте совет, плиз, куда двигаться !🙂 Или опишите свою историю что да как.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий