Я сейчас работаю над флаттерным приложением, которое является своего рода приложением для социальных сетей.
В приложении есть обычные подозреваемые в огромных приложениях, API-интерфейс для связи с сервером, http и веб-сокеты, глобальные уведомления о входящих сообщениях в нижней панели приложений и в представлении списка чатов, просмотр других людей. профили, редактирование собственного профиля, отправка / получение сообщений, новостная лента и т. д. c.
. Сейчас я использую пакет провайдера, чтобы отделить бизнес-логику c от пользовательского интерфейса и сохранить ее. штат. Текущая архитектура похожа на MVVM. Модели содержат большую часть бизнес-логики c, извлекают данные через APIService и передают их в пользовательский интерфейс, будь то поток или будущее.
Даже если все "работает", я все еще Я не совсем доволен архитектурой моего кода, и я пытаюсь понять, как лучше спроектировать такой огромный проект. Поскольку я также программирую сервер для приложения самостоятельно, я очень гибок в отношении архитектуры.
Я следил за flutter_blo c, и они дают отличные примеры там, но они в основном нацелены на один конкретный c сценарий использования, например, список задач и т. д. c. но без показа каких-либо сложных примеров.
Как один архитектор может создать такое приложение наиболее логичным способом?