ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 웹 API를 위한 JSON vs XML
    프로젝트 2023. 4. 25. 10:35

    JASON (JavaScript Object Notation)

    - 데이터를 저장하거나 전송할 때 많이 사용되는 경량의 DATA 교환 형식

    - 자바 스크립트 객체 표기법

    - 이해하기 쉽고 용량이 적어 XML을 대체해서 데이터 전송 등에 많이 사용

    - JSON은 텍스트 기반이기 때문에 다양한 프로그래밍 언어에서 데이터를 읽고 사용할 수 있다

     

     

    JSON 특징

    - 서버와 클라이언트 간의 교류에서 많이 사용된다

    - 자바스크립트를 이용해 JSON 형식의 문서를 쉽게 자바스크립트 객체로 변환할 수 있다는 장점이 있다

    - JSON 문서 형식은 자바스크립트 객체의 형식을 기반으로 만들어졌다

     

     

    JSON 문법

    - JSON  형식은 key/value가 존재할 수 있으며 key값이나 문자열은 항상 큰따옴표를 이용해 표기

    - 객체는 중괄호( {} )로 묶어서 표현하고, 배열은 대괄호( [] )로 묶어서 표현한다

    - 객체, 배열 등의 표기를 사용할 수 있다

    - 원하는 만큼 중첩시켜 사용할 수 있다

    - 데이터의 값으로 다양한 타입을 사용할 수 있다

        > null, number, string, array, object, boolean

    - 자바스크립트의 문법과 굉장히 유사하지만 텍스트 형식일 뿐이

     

     

    JSON 형식

    1. name-value 형식

    - object

    - { String key : String value }

    - { String key : String value, String key : String value }

    - { key1 : { key2 : value }, key2 : [arr1, arr2, arr3] }

    {
    	"height" : "180",
    	"weight" : "80"
    }

     

    2. 값들의 순서화된 리스트 형식

    - Array

    - [ value1, value2, ... ]

    {
    	"height" : "180",
    	"weight" : "80",
    	"hobby" : ["drawing", "workout"] 
    }

     

     


     

     

    XML

    - EXtensible Markup Language

    - HTML과 매우 비슷한 문자 기반의 마크업 언어

    - 사람과 기계가 동시에 읽기 편한 구조

     

     

    JSON, XML 공통점

    - 데이터를 저장하고 전달하기 위해 고안되었다

    - 계층적인 데이터 구조를 가진다

    - 다양한 프로그래밍 언어에 의해 파싱될 수 있다

     

     

    JSON, XML 차이점

    - JSON은 종료 태그를 사용하지 않는다

    - JSON의 구문이 XML의 구문보다 더 짧다

    - JSON 데이터가 XML 데이터보다 더 빨리 읽고 쓸 수 있다

    - XML은 배열을 사용할 수 없지만 JSON은 배열을 사용할 수 있다

    - XML은 XML 파서로 파싱되며, JSON은 자바스크립트 표준 함수인 eval() 함수로 파싱 된다

     

     


     

     

    XML 문서는 XML DOM을 이용하여 해당 문서에 접근한다.

    JSON은 문자열을 전송받은 후 해당 문자열을 바로 파싱 하므로, XML보다 빠른 처리 속도를 보여준다.

    따라서 HTML과 자바스크립트가 연동되어 빠른 응답이 필요한 웹 환경에서 많이 사용된다

     

    JSON은 전송받은 데이터의 무결성을 사용자가 직접 검증해야 한다

    따라서 데이터 검증이 필요한 곳에서는 스키마를 사용하여 데이터의 무결성을 검증할 수 있는 XML이 많이 사용된다

     

     

     

     

     


    (참고)

    https://velog.io/@surim014/JSON%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80

    https://codingazua.tistory.com/4

    https://usefultoknow.tistory.com/15

    http://www.tcpschool.com/json/json_intro_xml

    728x90
Designed by Tistory.