| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
- 유니티
- 테이블 데이터
- Di
- 데이터 형식
- event bus
- 콘솔 앱
- 추상 팩토리 패턴
- MVP 패턴
- 구글 스프레드 시트
- Object Pool
- 프로젝트 생성
- 상태 패턴
- github desktop
- 오브젝트 풀
- 게임 디자인 패턴
- Canvas Scaler
- 이벤트 버스
- Dependency Injection
- 스타일 지침
- C#
- 의존성 주입
- 기술면접
- Render Mode
- Unity 기술면접
- 개발
- Abstract Factory Pattern
- 구글플레이콘솔
- Visual Studio Installer
- unity
- New Input System
- Today
- Total
목록Unity (37)
DevDino
"Array와 List의 차이는 무엇인가요?"C# 컬렉션 비교: Array, List, ArrayList, LinkedList Array(배열)- 고정 길이의 자료구조로, 선언 시 크기가 정해지며 이후에는 크기를 변경할 수 없습니다.- 연속된 메모리를 사용하여 캐시 적중률(Cache Hit)이 높고, 인덱스를 통한 접근 속도가 가장 빠릅니다.- 데이터의 개수가 변하지 않으며, 순차적이고 빠른 접근이 필요한 경우에 적합합니다.int[] arr = new int[3] {1, 2, 3}; List(제네릭 동적 배열)- 가변 길이를 지원하며 현재 C#과 유니티에서 가장 표준적으로 사용되는 자료구조입니다.- 내부적으로는 Array를 사용합니다. 데이터가 꽉 차면 기존 크기의 2배인 새로운 배열을 할당하고 기존 데..
"C#에서 string이 왜 불변 객체인가요?"C# string은 왜 불변(Immutable) 객체일까? string의 불변성(Immutability)이란?C#의 string 객체는 한 번 생성되면 메모리상의 값을 절대 수정할 수 없습니다.우리가 문자열을 수정하거나 합치는 것처럼 보이는 모든 연산은 사실상 새로운 string 객체를 메모리에 할당하여 반환하는 방식으로 동작합니다. C#은 왜 string을 불변으로 설계했을까?- 메모리 최적화 (String Pool): 값이 변하지 않음을 보장하므로, 똑같은 문자열 리터럴을 여러 번 선언해도 힙(Heap) 메모리에는 하나만 생성하여 참조를 공유할 수 있습니다.- 멀티스레드 안정성(Thread-Safe): 여러 스레드에서 동시에 접근하더라도 값이 변하지 않으..
"C#의 Garbage Collection은 어떻게 동작하나요?"가비지 컬렉션(Garbage Collection) 동작 방식C#은 개발자가 직접 메모리를 해제(free, delete)할 필요 없이, CLR(공용 언어 런타임) 환경의 가비지 컬렉터(GC, Garbage Collector)가 메모리 관리를 자동으로 수행합니다. 편리함의 대가로 성능 비용이 따르기 때문에, Unity 개발자라면 GC의 내부 동작 방식을 이해하고 최적화하는 것이 필수적입니다. GC의 개념GC의 핵심은 "루트(Root)에서 도달할 수 없는 객체는 쓰레기(Garbage)로 간주하고 메모리에서 해제한다"는 것입니다.하지만 힙(Heap) 영역 전체를 매번 검사하는 것은 너무 무겁기 때문에, C#의 GC는 "최근에 생성된 객체일수록 빨리..
"C#과 C++의 메모리 관리 차이점은 무엇인가요?"C# vs C++ 메모리 관리게임 클라이언트 개발자 면접에서 단골로 등장하는 질문 중 하나인 "C#과 C++의 메모리 관리 방식의 차이"입니다.두 언어는 메모리를 다루는 철학이 완전히 다르기 때문에, 이 차이를 명확히 이해하고 게임 성능 최적화에 어떻게 적용할지 고민하는 것이 중요합니다. C#: 자동 메모리 관리 (Garbage Collector 기반)C#은 개발자의 편의성과 안전성에 초점을 맞춘 언어로, CLR(공용 언어 런타임) 환경 위에서 메모리를 자동으로 관리합니다. 동작 방식개발자가 객체를 new로 할당하면, 이후 참조되지 않는 객체는 가비지 컬렉터(GC, Garbage Collector)가 주기적으로 탐지하여 메모리에서 해제합니다. 장점(안전..