[C#] 직렬화 (Serialization)
2022. 5. 3.
직렬화는 언제 사용할까? 유니티에서 Binary formatter를 사용하여 데이터를 로컬에 저장하거나 불러올 때 항상 직렬화를 거친다. 또한 멀티 게임 제작을 할 때에도 직렬화라는 용어를 보게 되는데 의미를 잘 알지 못해서 정리를 해보았다. 왜 직렬화를 사용하는가? 데이터를 저장하거나 통신을 할 때에는 스택 메모리를 사용한다. 힙 메모리의 참조 값들은 컴퓨터마다 주소 값이 다를 뿐만 아니라 사라지기 때문이다. 따라서 힙과 스택 중 힙에 해당하는 메모리 영역을 스택으로 변환시켜 주는 과정이 필요하다. 직렬화 과정은 이러한 데이터 파싱 역시 포함한다. 직렬화를 사용하여 데이터를 원하는 방향으로 가공하는 것이다. 다시 말해 직렬화는 데이터를 원하는 데이터 바이트 스트림 형태로 변환한다. - 데이터 스트림이란..