Serialization, Deserialization

[C#] Serialization, Deserialization

유니티로 종스크롤 슈팅게임을 만들면서 데이터를 저장하고, 불러오는 과정이 있었다.

Json 파일로 데이터를 저장해주었고 DataManager라는 클래스를 통하여 데이터를 불러오고, 저장을 해주었다.

이 과정에서 Deserialization, Serialization 즉, 직렬화와 역직렬화 과정을 통해 데이터를 관리하였다.

Serialization

직렬화는 객체의 형태로 존재하는 데이터를 연속적인 데이터로 변형하는 것이다.

“name” : “euiyoung”,

“age” : 24,

“gender” : “woman”

key - value 의 객체 상태로 존재하는 위 데이터를

“euiyoung” 24 “woman”

형태로 만들어준다.

데이터를 저장하거나 데이터를 전송할 때 직렬화 과정을 거친다.

Deserialization

역직렬화라고 일컫으며 직렬화된 데이터를 객체의 형태로 만드는 것을 의미하는 것이다.

스트림 데이터를 읽어 원래의 객체 형태로 복원을 하는 것으로

특정 데이터를 불러올 때 역직렬화 과정을 거친다.

“euiyoung” 24 “woman”

“name” : “euiyoung”,

“age” : 24,

“gender” : “woman”

위의 연속적인 데이터를 아래의 객체로 변형하는 과정이다.