카테고리 없음

Serialization

소깡이 2022. 8. 5. 17:27
728x90

Serialization (직렬화) - Encoding

시스템의 데이터 구조에 의해서 데이터는 값 타입과 참조 타입으로 구분되어 메모리에 저장되어 있다.

Value Type Reference Type
외부에서도 사용 가능  특정 시스템에서만 사용할 수 있는 형태로 저장
(= 메모리 주소)

Reference Type 데이터를 외부 시스템 즉, 서버에서도 사용할 수 있도록 Value Type 데이터로 변환하는 과정을 직렬화라고 한다.

- 시스템에서 사용하는 객체를 디스크에 저장하거나 네트워크를 통해 전송할 수 있는 형식으로 변환하는 작업을 의미

- 메모리 내 객체를 문자열로 변환하는 과정을 의미

 

Deserialization (역직렬화) - Decoding

직렬화의 반대 개념으로 직렬화된 데이터를 다시 시스템에서 사용할 수 있는 객체(클래스, 구조체)의 형태로 만드는 것을 말한다.

문자열 데이터를 parsing하여 객체 형태로 변환한다.

 

ex) JSON 문자열을 Swift 언어에서 객체로 사용하기 위해서 Dictionary Type 객체, 구조체, 클래스 등으로 변환한다.