Только разработчики Unity могут дать свою истинную мотивацию для этого дизайна, но один аргумент в поддержку такого подхода состоит в том, что есть аргумент, что каждый класс в программном проекте должен нести одну и только одну ответственность . GameObject - это именованная коллекция компонентов, и добавление положения / поворота / и т. Д. Означает, что у него будет 2 обязанности. Компонент Transform обрабатывает положение и поворот и поэтому не должен отвечать за присвоение имен или агрегирование других (потенциально не связанных) компонентов. Поэтому имеет смысл, чтобы эти 2 понятия существовали в 2 отдельных объектах.
В более общем плане, этот вопрос спрашивает: «Если между X и Y существует отношение 1 к 1, почему Y не является частью X или наоборот?» И общий ответ заключается в том, что программное обеспечение легче разрабатывать и поддерживать, если разбить его на более мелкие автономные части, даже если две части всегда работают вместе.