Геворг Данелян
Tech Lead
Это веб-приложение — яркая демонстрация того, почему подход с глобальными хранилищами нельзя использовать под любые проекты.
В Q:OS все хранилища были глобальные. Более того, в них хранились не только данные приложения, но и состояния UI-компонентов (открытость модального окна, выбранный пин на карте).
Стор использовался между двумя и более экранами. Как итог, любое изменение стора на одном из экранов приводило к неожиданным изменениям на всех зависимых экранах. Контролировать этот процесс было тяжело, так как каждое изменение в коде, которое затрагивало сторы, проходило через цикл тестирования и исправления по всем зависимым экранам. Сначала на уровне разработчика, а следом на уровне тестировщика. Эта проблема мешала масштабировать код и добавлять новый функционал.



























