Day 1 개발자필수지식

김의석·2024년 1월 11일
0

개발자필수지식

목록 보기
1/8

데이터교환형식-JSON과 직렬화와 역직렬화

JSON

  • javascript 객체문법으로 구조화된 데이터교환방식

1. Jacascript 객체문법

  • Jacascript의 객체는 key와 value로 구성된다.
  • key는 중복이 불가능하며 독립적으로 하나여야한다.
{
  "name" : "KIM" # key : value = 객체
}
  • JSON을 변환하는 Java의 pase와 Python의 load
    - 왜 사용하는가?
    JSON은 여러가지 언어에서부터 독립적이며, 각 언어에서 JSON을 사용할 때는 pase or load(역직렬화)가 필수로 사용된다.
JSON.pase(a) # Java에서 JSON을 js로 변환
json.load(a) # Python에서 JSON을 dictionary로 변환
  • 기타
    • 객체가 1개 이상인 경우 리스트에 담아 사용할 수 있다.
    • 재귀적 사용이 가능하다(자기자신을 반복적으로 사용).
{
    "지브리ost":[{"name":"마녀배달부 키키",
                "song":"따스함에 둘러쌇인다면"},
                {"name":"하울의 움직이는 성",
                "song" : "세계의 약속"
                         }]
}
{"name": "kim",
"favorite": [{"아령":{"weight":"10kg",
                    "shape":"6angle"}},
            {"banana":{"color":"green"}}]
} 

2. 데이터+교환형식

  • JSON은 대표적인 하나의 교환양식

3. 단순배열,문자열 표현

  • JSON내에서 JS문법이 아닌 단순 문자열, 배열이어도 JSON이다.
    • 단순배열 : [1,2,3,4,]
    • 문자열 : "파카파카파카파카"

4. JSON의 타입

  • JSON은 Javascript와 유사하지만 undefined, 메서드 등을 포함할 수 없습니다.
  • 타입
    • number
    • string
    • bloolean
    • array
    • object
    • null

5. JSON의 직렬화, 역직렬화

  • 외부의 시스템에서도 사용할 수 있도록 바이트(byte) 형태로 데이터를 변환하는 기술이며 역직렬화는 반대를 의미

    • JSON.parse() 역직렬화
    • JSON.stringify() 직렬화, 단순문자열 JSON으로 변환
  • JSON의 활용

    • 서로 다른 시스템간에 데이터를 교환하기에 좋다.
      • 업비트의 API
      • 시스템구성 설정파일
profile
널리 이롭게

0개의 댓글

관련 채용 정보