이전 글 내용에 이어서 적도록 하겠습니다.
이전 글에서 Terrain에 자유문맥에 해당하는 내용만 담음으로 우리는 지형을 각 종류별로 1번씩만 만들고 Terrain 객체의 포인터를 받아오는 것으로 World를 만들 수 있게됐습니다.
이렇게 지형 종류가 같은 타일들은 모두 같은 Terrain 인스턴스 포인터를 받아오기만 하면 됩니다. 그림으로 표현하면 다음과 같습니다.
(Terrain 객체를 재사용하는 타일들)
Terrain 인스턴스가 여러 곳에서 사용되다보니 동적으로 할당하면 생명주기를 관리하기가 좀 더 어렵습니다. 따라서 World 클래스에 저장합니다.
위와 같이 World를 만듬으로써 이제 다음과 같이 땅을 채울수 있게 됩니다.
이제 지형 속성 값을 World 의 메서드 대신 Terrain 객체에서 바로 얻을 수 있습니다.
'Programming > Design Pattern' 카테고리의 다른 글
[Programming Pattern] 경량 패턴 (2) (0) | 2017.06.12 |
---|---|
[Programming Pattern] 경량 패턴 (1) (0) | 2017.06.09 |
[Programming Pattern] 명령(Command) 패턴 (실행취소와 재실행) (0) | 2017.05.25 |
[Programming Pattern] 명령(Command) 패턴 (액터에게 지시하기) (0) | 2017.05.05 |
[Programming Pattern] 명령(Command) 패턴 (입력 키 변경) (0) | 2017.05.02 |