Паттерны
October 9, 2023

Нативная архитектура web-приложения

Подход заключается в разделении компонентов по их строгому назначению и организации потока данных от ключевых точек входа (сверху) к второстепенным компонентам (внизу).

Структура:

Страницы (pages)

Ключевые точки входа приложения, принимают все данные и отправляют их вниз к второстепенным компонентам.

Компоненты (components)

Компоненты для работы страницы, включают в себя:

  • UI-компоненты
  • Компоненты с бизнес-логикой

Хранилище (store)

Точка входа для хранения и управления данными, включает в себя:

  • Сторы
  • Редюсеры
  • Хуки
  • Коннекторы

Библиотеки (libs)

Набор файлов для решения прикладных задач, включают в себя:

  • API-коннекторы
  • Утилиты для решения задач

Итог

Плюсы

  • Компоненты находятся рядом

Минусы

  • Нет четкой связанности компонентов и логики:
    • Дублирование компонентов
    • Затрудненный поиск компонентов
  • Стороннему разработчику сложно разобраться в проекте

Подходит:

  • Разработчику, который делает приложение от начала до продакшена
  • Маленькой команде до 2-ух человека
  • Создание прототипа (скорость, простота)
  • Учебный проект