1. 상태 패턴
객체의 내부 상태에 따라 스스로 행동을 변경할 수 있게 허가하는 패턴.
- 가질 수 있는 상태가 한정.
- 한번에 한가지 상태만 될 수 있음.
- '입력'이나 '이벤트'가 기계에 전달된다.
- 각 상태에는 입력에 따라 다음 상태로 바뀌는 '전이'가 있다.
2. 싱글턴 패턴
오직 한개의 클래스 인스턴스만을 갖도록 보장하고, 이에 대한 전역적인 접근점을 제공한다.
싱글턴을 실제로 필요로 할 때까지 인스턴스 초기화를 미루는 역할 (게으른 초기화)도 한다.
*싱글턴 장점
-한번도 사용하지 않는다면 아예 인스턴스 생성 X
-런타임에 초기화
-싱글턴을 상속할 수 있음
*싱글턴 단점
-알고보니 전역 변수.. 버그를 찾거나 수정 시 이해 어려움
-커플링을 조장한다.
(커플링 : 코드의 한 요소가 다른 것과 얼마나 강력하게 연결되어 있는지 , 얼마나 의존적인지 나타내는 정도)
-게으른 초기화는 게임 프로그래밍에서는 제어가 어려움.
3. 컴포넌트 패턴
한 개체가 여러 분야를 서로 커플링 없이 다룰 수 있게 한다.
여러 분야를 다루는 하나의 개체가 있다면, 분야별로 격리하기 위해 각각의 코드를 별도의 컴포넌트 클래스에 둔다.
이제 개체 클래스는 단순히 이들 컴포넌트들의 컨테이너 역할만 한다.
Ex. 게임오브젝트1은 물리 컴포넌트와 그래픽 컴포넌트를 가진다.
'공부 > 개념 & 유용한 내용' 카테고리의 다른 글
포인터와 참조자의 차이 (0) | 2020.06.15 |
---|---|
Deque란? (0) | 2020.06.10 |
UNITY - NavMeshAgent가 이동하고 있고 , 목적지에 도착했는지 계산 (0) | 2020.06.03 |
객체 지향 (Object Oriented Programming) 정리 (1) | 2020.06.03 |
추상클래스(abstract) & 인터페이스(interface) (0) | 2020.05.29 |