# Основные понятия

- Human documentation: [https://docs.univer.ai/ru-RU/guides/docs/getting-started/quickstart](https://docs.univer.ai/ru-RU/guides/docs/getting-started/quickstart)

- Agent Markdown: [https://docs.univer.ai/ru-RU/guides/docs/getting-started/quickstart.md](https://docs.univer.ai/ru-RU/guides/docs/getting-started/quickstart.md)

- Requested language: `ru-RU`

- Content language: `ru-RU`

- Documentation version: `1.2.0`

- Source: [docs/getting-started/quickstart.ru-RU.mdx](https://github.com/dream-num/documentation/blob/dev/content/guides/docs/getting-started/quickstart.ru-RU.mdx)

---

Познакомьтесь с плагинами, снимками, командами и Facade API Univer Docs. Для создания редактора перейдите к [установке и основам использования](https://docs.univer.ai/ru-RU/guides/docs/getting-started/installation.md).

## Основные понятия

Прежде чем глубже погружаться в Univer, ознакомьтесь с его основными понятиями. Это поможет вам увереннее работать с Univer.

К основным понятиям относятся:

* Плагин
* Снимок
* Команда
* Facade API

### Плагины

Все функции Univer реализованы с помощью плагинов — основных строительных блоков системы. Приложение Univer формируется из нескольких объединённых плагинов.

Плагины выполняют следующие задачи:

1. Реализуют функции. Например, `@univerjs/docs-hyper-link` предоставляет модель гиперссылок и команды для Univer Docs.
2. Предоставляют базовые возможности. Например, `@univerjs/engine-render` отвечает за отрисовку.

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

#### Ссылки по теме

1. В разделе [«Гиперссылки»](https://docs.univer.ai/ru-RU/guides/docs/features/hyper-link.md) описано, как добавить функцию Docs в режиме preset или plugin.
2. Подробнее об архитектуре Univer читайте в разделе [«Архитектура Univer»](/blog/univer).

### Снимок

Univer Docs использует [`IDocumentData`](https://docs.univer.ai/ru-RU/guides/docs/model/document-data.md#idocumentdata) в качестве формата снимка. Он описывает содержимое документа, стили уровня документа, верхние и нижние колонтитулы, рисунки, списки, таблицы и ресурсы плагинов.

Необязательное поле `resources` хранит данные, определённые плагинами.

> [!WARNING: Внимание]
> Снимок Univer предназначен только для хранения данных и не отражает актуальное состояние документа во время
> выполнения! Чтобы сохранить состояние документа в виде снимка, используйте метод сохранения снимка из Facade API.

### Команда

В Univer Docs изменения содержимого и форматирования документа выполняются с помощью команд. Такой подход позволяет отслеживать изменения, реализовывать отмену, повтор и совместное редактирование, а также координировать связанные функции.

Facade API подготавливает параметры и выполняет соответствующие команды Docs в фоновом режиме.

> [!WARNING: Внимание]
> **Не изменяйте снимок напрямую!** Такие изменения не применятся и не приведут к обновлению представлений или
> пользовательского интерфейса. Изменяйте данные с помощью команд или Facade API.

### Facade API

Офисные приложения очень сложны, поэтому архитектура Univer тоже устроена непросто. Чтобы разработчикам было удобнее работать с Univer, мы предоставляем Facade API — обёртку над официальными плагинами Univer с более простыми интерфейсами.

Facade API активно развивается. Если у вас есть вопросы или пожелания, создайте issue на GitHub.

Facade API — это высокоуровневый API, который скрывает детали внутренней реализации. Он упрощает типовые задачи, но для сложных функций может потребоваться понимание архитектуры Univer и непосредственное использование низкоуровневого API.

#### Ссылки по теме

1. [Использование Facade API](https://docs.univer.ai/ru-RU/guides/docs/getting-started/facade.md)
2. [Общий API](https://docs.univer.ai/ru-RU/guides/docs/features/core/general-api.md)
3. [API Univer Docs](https://docs.univer.ai/ru-RU/guides/docs/features/core/docs-api.md)

## Режим пресетов и режим плагинов

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

> [!WARNING]
> Версии всех зависимостей Univer должны совпадать. Не регистрируйте повторно плагин, уже включённый в пресет.

| Режим плагинов                  | Режим пресетов                                  |
| ------------------------------- | ----------------------------------------------- |
| Явный импорт расширений Facade  | Расширения Facade включены                      |
| Контроль порядка регистрации    | Пресет управляет своими плагинами               |
| Загрузка плагинов по требованию | Загрузка настроенных пресетов при инициализации |
