Источники чисел страницы: internal-component, карта модулей src и project-status.json; дата среза показана в карточке состояния.

Раздел 2

Из чего состоит программа

Пять частей последовательно ведут расчёт от задания к схеме. Ещё восемь задают общие правила, хранят каталог, сравнивают варианты, повторяют ошибки, публикуют результат и связывают программу с внешними системами.

Основной путь расчёта5 зон ответственности
  1. Приём заданияпроверяет и приводит данные к общему виду
  2. Подбор квартирсобирает подходящий состав
  3. Расстановкастроит и сравнивает ряды
  4. Проверка размеровнаходит пересечения и выходы за границы
  5. Готовая схемапоказывает результат и предупреждения
Помогают на разных этапах8 общих частей
Устройство программыОбщие правилаКаталог квартирСвободные места Оценка качестваПовтор ошибокПубликацияВнешние подключения

Устройство программы

Кто за что отвечает

Выберите одну часть программы. Открытым остаётся только её контракт: вход, выход, граница, основные файлы и проверка.

устройствоОбщее устройство программыРазделяет ответственность и задаёт правила связи частей
Получает
Общие понятия продукта, потоки данных и требования к качеству.
Передаёт
Границы модулей, владельцев решений и правила совместной работы.
Граница
Не выполняет расчёт и не подменяет ответственность отдельных частей.
Основные файлы
internal-component, internal-component

Проверка: npm run lint:architecture-docs

экранЭкран и запускСобирает ввод и запускает пересчёт
Получает
Форму секции, длину, состав квартир и требования.
Передаёт
Чистое задание подбору квартир и расстановке.
Граница
Не выбирает квартиры и не строит SVG.
Основные файлы
internal-component, internal-component*

Проверка: npm run test:browser

словарьОбщие названия и единицыХранит единый язык программы
Получает
Понятия «ряд», «секция», «ЛЛУ», «тип квартиры» и «шаг».
Передаёт
Стабильные названия и правило 1 шаг = 300 мм.
Граница
Не выполняет поиск и физическое размещение.
Основные файлы
internal-component, internal-component*

Проверка: npm run smoke

каталогКаталог квартирОписывает размеры, стены, двери и варианты
Получает
Карточки и тестовые данные квартир.
Передаёт
Варианты, размеры, признаки и геометрию миниатюр.
Граница
Не меняет ряды и не сравнивает планы.
Основные файлы
internal-component*, internal-component*

Проверка: npm run test:assets

подборПодбор квартирОпределяет допустимый состав
Получает
Тип секции, длину, требования и ограничения.
Передаёт
Наборы количества квартир каждого типа.
Граница
Не выбирает места и не знает SVG.
Основные файлы
internal-component*

Проверка: npm run solver:layout

расстановкаРасстановка и сравнениеПревращает состав в план по рядам
Получает
Наборы квартир, размеры рядов и требования.
Передаёт
Порядок, ряды, смещения и оценку вариантов.
Граница
Не рисует схему и не владеет DOM.
Основные файлы
internal-component*, internal-component*

Проверка: npm run solution:mix

промежуткиЗаполнение свободных местИщет ограниченные добавления в свободные интервалы
Получает
Свободные интервалы и допустимые варианты квартир.
Передаёт
План заполнения оставшихся мест.
Граница
Не выбирает основной результат подбора.
Основные файлы
internal-component*

Проверка: npm run combinatorics:grid

геометрияПроверка размеров и границПринимает или отклоняет физическую раскладку
Получает
Ряды, ЛЛУ, переходы и границы секции.
Передаёт
Проверенную модель, предупреждения и переполнение.
Граница
Не ранжирует составы и не создаёт SVG.
Основные файлы
internal-component*, internal-component*

Проверка: npm run placement:space

схемаПостроение схемыРисует уже принятую модель
Получает
Проверенную модель, замечания и настройки изображения.
Передаёт
SVG с квартирами, коридором, дверями и пустотами.
Граница
Не размещает и не выбирает квартиры.
Основные файлы
internal-component*

Проверка: npm run test:render

метрикиОценка качестваСчитает TEPS и сравнимые оценки
Получает
План, раскладку и данные квартир.
Передаёт
Площадь, эффективность, пустоты и итоговую оценку.
Граница
Не двигает квартиры и не рисует.
Основные файлы
internal-component*, internal-component*

Проверка: npm run teps:regression

повтор ошибкиДиагностический снимокСохраняет вход и результат для повторения
Получает
Состояние, требования, ряды и предупреждения.
Передаёт
Версионированный файл воспроизведения.
Граница
Не участвует в обычном выборе результата.
Основные файлы
internal-component*, internal-component*

Проверка: npm run debug:snapshot

публикацияПортал и публикацияСобирает этот сайт и публикует проверенный статус
Получает
Статус проекта, журнал работы и разрешённые публичные файлы.
Передаёт
Проверенную статическую витрину и её опубликованную версию.
Граница
Не меняет решения подбора, геометрии и построения схемы.
Основные файлы
internal-component*, internal-component*

Проверка: node internal-component

подключенияВнешние подключенияСвязывает проекты с Hercules, Revit и другими программами
Получает
Проекты, команды внешних программ и их форматы данных.
Передаёт
Проверенные запросы, ответы и сохранённые проекты.
Граница
Не переносит правила внешней системы внутрь подбора квартир, проверки геометрии или отрисовки.
Основные файлы
internal-component*, internal-component*

Проверка: npm run typecheck