📕 4. 객체지향 디자인 패턴
유니티에서 사용하면 좋을 디자인 패턴만 명시한다.
📄 4. 구조 패턴
클래스나 객체를 조합하여 더 큰구조로 만드는 패턴
3). Flyweight Pattern
ⓐ 특징
- 다수의 유사객체를 사용하거나 조작할떄 유용
- 인스턴스가 필요할 때마다 매번 생성하는것이 아닌 가능한 공유를 통해 사용함으로 메모리를 절약하는 패턴
- 인스턴시에이트를 많이 해야할때, 공유를 통해 오브젝트를 더 가볍게, 메모리를 절약할때 사용한다.
ⓑ 왜 쓰는건가?
- 마인크래프트를 생각해보자 매~~~~~~우 많은 블럭들이 있을것이다. 이 마크에서는 텍스쳐를 플라이 웨이트방식으로 구현했다
- 만약 스타같은 게임을 만든다할때. 유닛들은 같은 mesh, texture, maxhelth setting등등
이 유닛들이 모두 단일 오브젝트를 받아 공유되게끔 만들수 있다. - 유니티에서도 이미 sharedMesh, sharedMaterial으로 구현되어 있다. 하나 바꾸면 다 바뀌게
ⓒ 구현
- 모든 인스턴스에서 공유할 수 있는 데이터를 분할시킨다.
- Storage 클래스를 만들어 공유데이터를 넣고, 불러오는 방식
'CS > SW 공학' 카테고리의 다른 글
| 니앙팽이 - 객체지향(OOP) | 4-7 | 행동패턴 - Observer pattern (0) | 2023.02.02 |
---|---|
| 니앙팽이 - 객체지향(OOP) | 4-6 | 행동패턴 - Command pattern (0) | 2023.02.02 |
| 니앙팽이 - 객체지향(OOP) | 4-4 | 구조패턴 - Decorator pattern (0) | 2023.02.02 |
| 니앙팽이 - 객체지향(OOP) | 4-3 | 구조패턴 - Composite pattern (0) | 2023.02.02 |
| 니앙팽이 - 객체지향(OOP) | 4-2 | 생성패턴 - Singleton pattern (0) | 2023.02.02 |