Table of Contents
직렬화와 역직렬화
- 직렬화(Serialization)
- 메모리 상에 존재하는 객체를 문자열(바이너리 또는 텍스트)로 변환하는 것을 말한다
- 문자열로 변환함으로써 네트워크를 통해 전송하고, 파일로 저장하는 것이 가능해진다
- 역직렬화(Deserialization)
- 역직렬화는 직렬화의 반대로, 문자열을 객체로 변환하는 것을 말한다
JSON
- JavaScript Object Notation
- 자바스크립트 객체를 문자열로 표현한 데이터 포맷이다
- 문자열이기 때문에 외부 요소와 데이터를 주고 받을 수 있고, 동시에 객체 형태이기 때문에 키와 값을 가지는 형태로 데이터를 표현하기 좋다
- 그래서 직렬화/역직렬화에서 문자열을 JSON 형태로 많이 사용한다 (XML과 같은 다른 형태에 비해 간결하다)
JSON 문법
- 키(key)과 값(value)으로 구성된다
- 키를 중복선언하면 나중에 선언한 해당 키가 덮어쓰게 된다
- 키(key)는 쌍따옴표로 묶인 문자열이어야 한다
- 값(value)으로 number, string, boolean, array, object, null 타입을 사용할 수 있다
{
"name": "Mike",
"age": 20,
"isAlive": true,
"hobbies": ["Soccer", "Game"]
}