[Unity] 유니티 Singleton Pattern
https://choiyoungchan.github.io/design%20pattern/singleton/
싱글톤 패턴의 사용 이유와 개념은 위의 포스팅을 참조
사용법
싱글톤 패턴을 구현하는 방법은 여러가지가 있으나 기본적으로 Static형 인스턴스를 1개 생성한다는점에서 공통점이 있으며, Unity에서 활용 가능한 싱글톤 패턴을 4가지 정도 소개하고자 합니다.
경우와 상황에 따라 변형 하여 사용하는 경우도 많이 있습니다.
- 일반적인 싱글톤
- MonoBehaviour를 사용한 싱글톤
- Generic을 활용, MonoBehaviour를 사용 하는 싱글톤
- Generic을 활용, MonoBehaviour를 사용 하지않는 싱글톤
일반적인 싱글톤
MonoBehaviour를 사용한 싱글톤
Generic을 활용, MonoBehaviour를 사용 하는 싱글톤
사용 예시
Generic을 활용, MonoBehaviour를 사용 하지않는 싱글톤
문제점&주의사항
- 싱글톤의 역할이 커질 수록 결합도가 높아져서 객체 지향 설계 원칙(개방-폐쇄 원칙)에 어긋날 수 있다.
- 객체의 파괴 시점을 컨트롤 하기 어려워질 수 있다.
- 멀티쓰레드 환경에서 컨트롤이 어렵다.