Beta Документация для beta‑теста, возможны ошибки и неточности.
Перейти к содержимому

WARNING

Страница требует обсуждения и доработки.

Глоссарий

Краткие определения ключевых терминов, используемых в документации FEOD. Важно отметить, что многие из терминов не специфичны для FEOD и используются в других методологиях, тут они указаны для однозначного определения.

  • FEOD (Fractal Entity Oriented Design) — методология организации структуры проекта, задающая уровни сущностей и правила их взаимодействия.
  • Методология — это набор правил и конвенций, которые используются для организации структуры проекта.
  • Архитектура — это логика и правила взаимодействия между сущностями проекта.
  • Структура — это расположение сущностей в файловой системе.
  • Уровень — это группа сущностей на одном уровне файловой системы и наделенные определенной логикой. Например: app-уровень, уровень модулей (значит что все сущности на этом уровне являются модулями).
  • Сущность — файл или директория с определенной ролью и правилами использования.
  • Роль или Тип — собирательный термин для обозначения совокупности логики и семантики однотипных сущностей.
  • App — уровень запуска и настройки приложения: входная точка, роутер, интеграции, конфигурации, лейауты.
  • Pages — уровень страниц приложения; страницы соответствуют URL и не переиспользуются другими уровнями. Может быть частью модуля.
  • Modules — уровень бизнес-логики, организованной в независимые модули с публичным API.
  • Common — уровень общих переиспользуемых сущностей без бизнес-специфики.
  • Global — уровень сущностей, доступных без импорта (глобальные типы, полифиллы, shim).
  • Сущность — файл или директория с определенной ролью и правилами использования.
  • Модуль — самостоятельная часть логики с публичным API, экспортируемым через index.ts.
  • Подмодуль — модуль внутри модуля, подчиняющийся тем же правилам и доступный через API родительского модуля.
  • Публичный API модуля — единственная точка входа в модуль, как правило index.ts.
  • Фрактальность — возможность строить вложенные структуры без ограничения глубины.
  • File-based routing — подход, при котором структура файлов pages соответствует структуре URL.
  • IoC (Inversion of Control) — подход к управлению зависимостями, при котором реализация внедряется извне.
  • DI (Dependency Injection) — механизм внедрения зависимостей, часто используемый совместно с IoC.
  • SSR (Server-Side Rendering) — серверная отрисовка приложения с отдельными точками входа клиента и сервера.
  • BFF (Backend for Frontend) — серверный уровень, адаптирующий данные под нужды конкретного фронтенда.
  • DDD (Domain-Driven Design) — подход к проектированию, где структура отражает доменную модель.
  • Приватный модуль страницы — модуль с префиксом _ внутри pages, доступный только в рамках своей страницы.
  • Сквозной модуль — модуль-контейнер, который содержит подмодули напрямую без папки modules/.
  • Однофайловый модуль — модуль, реализованный в одном файле в modules/.
  • Индексный файл (barrel file) — индексный файл, собирающий реэкспорты, например index.ts.
  • Tree-shaking — удаление неиспользуемого кода на этапе сборки.
  • Алиас импорта — сокращенный путь, например @/modules/..., ведущий к корню исходников.