[디자인패턴] Flyweight Pattern 경량패턴
[디자인패턴] Flyweight Pattern 경량패턴 1. 간단한 요약 내용이 같은 객체가 이미 있으면 새로 객체를 또 만들지 않고 그 내용 같은 기존 객체를 공유한다. 2. 사용은 언제 ? 게임에는 많은 반복작업이 들어간다. 대표적인 예는 게임에서 나무나 돌과 같은 지형 지물의 구현이다. 맵 하나에 지형 지물을 일일히 전부 다르게 구현하는 게임은 사실상 존재하지 않는다. 대부분 여러개의 돌이나 나무 오브젝트 같은 경우를 미리 만들어놓고 여러개를 공유해서 사용한다. 이런경우 이미지를 메모리에 나무마다 띄워둘 필요 없이 하나의 메모리에 이미지를 올려두고 여러개의 나무는 단지 하나의 이미지를 참조만 하는 형식으로 사용하면 좋다. 위의 예제에서는 나무의 고유한 값(나무마다 이미지는 변할 필요가 없다.) 나무..