Тема
Жизненный цикл документа
Жизненный цикл описывает путь от создания документа до его исполнения и последующего изменения.
Создание
Документ получает тип, identity и начальный source. Identity должен быть уникальным в своей коллекции и пригодным для долгоживущих ссылок.
Редактирование и валидация
Конфигуратор изменяет authoring-модель. Перед сохранением source проверяется на синтаксис и базовые контракты. Некоторые ошибки связей можно обнаружить только при компиляции полного контекста.
Компиляция
Компилятор преобразует source в program. Program содержит нормализованный контракт, с которым работает runtime, и не должен зависеть от состояния редактора.
Исполнение
Runtime создаёт host, подключает входы, подписки и ресурсы. Жизненный цикл host обычно включает создание, работу и освобождение. Временное состояние host не сохраняется как source автоматически.
Изменение версии
При обновлении документа следует повторно проверить его зависимости и создать новый runtime из новой программы. Уже работающий экземпляр не должен незаметно менять свой контракт посередине операции.
Архивация и удаление
Перед удалением нужно найти входящие ссылки. Если документ нужен исторической версии, безопаснее архивировать его или оставить в снимке, чем разрывать воспроизводимость версии.