[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”
위의 연속적인 데이터를 아래의 객체로 변형하는 과정이다.