Component Pattern은 말 그대로 컴포넌트를 만들어 한 개체가 여러 분야를 서로 커플링 없이 다룰 수 있게 해준다.
로직을 기능별로 컴포넌트화 하는 것, 클래스로 분리하고 Readability(가독성)를 올리고 Decopling 시키는 것은 협업하여 개발을 많이 해본 사람들에게는 자연히 녹아 있는 습관이다. 이런 구조적인 개선 작업을 선배 개발자들이 이미 컴포넌트 패턴으로 명명해 두었다.
Unity의 GameObjct는 Component 패턴이 잘 반영되어 설계된 클래스라고 할 수 있다. (GetComponent Method로 각각의 Decoupling된 하위 컴포넌트들 불러서 사용할 수 있게 해두었다.
유니티는 새로운 행동을 추가하는 컴포지션(합성, composition) 구조를 채용한다. 이 점은 상속(Inheritance)을 통해 확장되는 오브젝트 지향(객체 지향) 클래스 계층과는 위상을 달리한다.