[디자인 패턴] 컴포넌트 패턴
컴포넌트 패턴은 구성을 적용하는 단순한 패턴 중 하나다.
원리는 정말 단순하다. 각자의 기능을 맡을 컴포넌트를 클래스로 구현한 후, 그 클래스들의 객체를 멤버로 포함시키는 것이다.
예를 들어 게임의 전반적인 기능을 구현하는 GameManager 클래스를 구현한다 치자.
여기에는 여러가지 기능들이 들어갈 것이다. 렌더링 기능, 플레이어 관리 기능, 몬스터 관리 기능 등등...
저런 다양한 기능들을 GameManager에 전부 때려박아도 작동은 하겠지만 참 괴악한 구조가 될 것이다. 재사용도 안되고, 수정도 불편하고...
바람직한 방법은 저 기능들을 클래스(컴포넌트)로 만들고 GameManager 안에 포함시키는 것이다. 그럼 GaneManager는 각자의 컴포넌트에서 구현된 기능을 땡겨쓰기만 하면 된다.
아래는 컴포넌트를 구현한 예다.


그리고 이것들을 총 관리 클래스인 GameManager에 포함시켜서 굴린다.


이런거다.
별거없다.