Я работаю с командой, в которой мобильное приложение интегрировано с Salesforce, выступающей в качестве бэкэнда.
Я работаю в мобильной команде.
Я продолжаю спорить с командой Salesforce о том, почемуопределенная логика должна быть написана на SF против мобильного.
Мой обычный аргумент состоит в том, что сборка мобильного приложения должна быть легкой, что тяжелая логическая обработка должна быть на внутренней стороне, что нам нужно держать код более масштабируемым и управляемым из внутренней части, чтобы мы не заканчивалисделать несколько выпусков мобильных приложений.Последняя часть согласуется с тем, что пользователям приходится обновлять приложение каждый раз, когда меняется мобильный код, по сравнению с отсутствием действий от конечного пользователя (с небольшим временем простоя в нерабочие часы), если оно является внутренним обновлением.
Пример сегодняшнего дня:
У нас есть что-то, что называется методом доставки для функциональности нашего приложения.Для этого есть два источника данных.Один из них для случая, когда пользователь выбирает условие A, которое является немного сложным и нуждается в веб-службе REST для мобильных устройств, чтобы получить методы доставки.Другой случай, когда пользователь выбирает условие B, и он простой, и методы доставки могут быть доступны с мобильного телефона с помощью запроса SOQL.
Однако, в обоих случаях вывод одинаковый, точный видданных .
То, что я предложил, было то, что SF обрабатывает оба условия на их стороне как часть одного веб-сервиса, используя аргумент, предоставленный мобильным.
Согласовано условие B, используется только запрос SOQL, с точки зрения производительности - не будет делатьбольшая разница.То же самое, если сделать это из Mobile / Salesforce в рамках веб-сервиса.Однако я чувствую, что это сделает код чище и содержательнее, сократит количество строк кода в целом.
Сотрудники SF просят мобильный телефон позвонить в веб-сервис, если его условие A, и сделать SOQL, когда это условие B.
Данные с обоих устройств должны быть проанализированы на мобильном телефоне отдельно, что означает, чтогораздо больше кода на мобильных устройствах для обработки и обработки точного вида данных - в два раза.
Их аргумент в пользу этого заключается в том, что им приходится писать больше тестовых классов для обработки этого.Правильно ли учитывать экзамен при принятии таких решений?Я не понимаю.
Нужна помощь и руководство для лучших практик.Некоторая документация, которая поможет принять эти решения.