### Первый тип компонентов Обычно 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.