일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Algorithm
- 유니티
- 플레이어 방향전환
- 플레이어 이동
- 오브젝트 풀링
- Back Tracking
- dfs
- dp 알고리즘
- pccp 기출문제 3번
- LayerMark
- 백준 c++ 9375번
- 연속 펄스 부분 수열의 합
- Lv.3
- 양과 늑대
- pccp 기출문제 2번
- 미로 탈출 명령어
- Hp바
- heap tree
- Unity
- Blend Type
- pccp 기출문제 1번
- 9375번
- Lv2
- 프로그래머스
- 2D슈팅게임
- Ainimation Blending
- CSharp #자료구조
- Animation State Machine
- C#
- 충돌위험 찾기
- Today
- Total
목록GameDevelopment/[Unity] Pattern, Etc (2)
주녘공부일지
싱글톤 패턴 (Singleton Pattern) 이란? 특정 클래스의 객체(instance)가 오직 하나만 존재하기 원할 때 사용하는 디자인 패턴으로 최초 한번만 메모리를 할당하고 메모리에 인스턴스를 만들어 재사용하는 디자인 패턴 - 즉, 오직 한 개의 클래스 인스턴스만 갖도록 보장하며, 전역 접근점은 제공하는 디자인 패턴 1) 싱글톤 패턴의 장점 - 사용하지 않으면 인스턴스를 생성하지 않으며, 고정된 메모리 영역을 사용하므로 메모리 낭비 방지가 가능 - 다른 클래스의 인스턴스들이 데이터를 공유하기 편리한 등의 쉬운 접근성 2) 싱글톤 패턴의 단점 ( 전역 변수 ) - 코드 이해 난이도를 높일 수 있음 ( 참조가 너무 많아 버그 추적이 어려움, 등 ) - 인스턴스들 간에 결합도가 높아짐 ( 객체 지향 설..
Object Pooling : 오브젝트를 재활용하기 위한 디자인 패턴 ( 최적화 ) 빈번히 생성, 파괴되는 오브젝트들을 풀에 모아서 미리 생성해놓고 활성화 / 비활성화로 관리하며 재사용 - 런타임 중에 수십개의 다른 오브젝트를 생성하고 파괴하는 것은 성능적으로 굉장히 많은 공간을 차지하기 때문에, 미리 생성함으로써 런타임에서의 불필요한 메모리 낭비를 최소화하지만, Loading 시간이 소요됨 - C++은 힙에 메모리 공간을 할당하고 원하는 시점에 삭제할 수 있지만, ( new, delete ) C#은 사용하지 않는 메모리가 생기면 가비지 컬렉트(GC)가 일정 주기마다 메모리를 정리하기 때문에 GC의 실행 시점을 제어하기 위해서도 사용 - 만약, 풀 안에 오브젝트를 가져오려고 할 때, 모든 오브젝트가 사용..