### Первый тип компонентов
Обычно gameobjects создается через код. Делается это через ViewAPI. ViewAPI добавляет в gameobject компонент EntityMono, чтобы связать Gameobject и Entity.
BaseConfiguration используется только для того, чтобы добавлять префабы на сцену и присваивать им сконфигурированные сущности.
То есть, либо через код добавляется gm, либо через сцену.
##### EntityMono
Был создан для того, чтобы связать gameobject с Entity.
Компонент-фундамент.
Добавляется только через код.
Хранит в себе ссылку на Entity.
##### BaseConfiguration
Наследуется от EntityMono.
Используется только для наследования.
##### Что-тоConf (например HumveeConf)
Наследуется от BaseConfiguration.
Добавляется только через инспектор.
Просто вызывает конфигуратор Entity, чтобы привести Entity к нужному виду.
<br>
### Второй тип компонентов
Второй тип компонентов был придуман для того, чтобы можно было создавать мосты между ECS-компонентами и Unity-компонентами. То есть синхронизировать данные между ними. Например, если изменилось значение поля в ECS-компоненте, то Unity-компонент подхватывает это изменение и сохраняет в «зеркальном» поле у себя.
##### Mono
Используется только для наследования.
Ищет EntityMono и сохраняет ссылку на него, чтобы можно было обращаться к Entity.
##### Что-тоMono (например TransformMono/HealthBarMono)
Добавляется только через код.
Используется с целью подписаться на изменение данных в каком-либо ECS-компоненте и при изменениях копировать значения в Unity.