ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JSON과 XML
    프로그래밍 기초 공부 2022. 9. 19. 01:47

    네번째로 포스팅하게 될 내용은 JSON과 XML에 관한 내용입니다.

     

    [ XML ]

    • XML은 데이터를 저장하고 전달할 목적으로 만들어졌으며, 저장되는 데이터의 구조를 기술하기 위한 언어
    • 이 언어는 사람과 기계가 동시에 읽기 편한 구조
    • XML은 HTML처럼 데이터를 보여주는 목적이 아닌, 데이터를 저장하고 전달할 목적으로만 만들어짐
    • XML 태그는 HTML 태그처럼 미리 정의되어 있지 않고, 사용자가 직접 정의할 수 있음

     

    [ XML 특징 ]

    • XML은 다른 목적의 마크업 언어를 만드는 데 사용되는 다목적 마크업 언어
    • XML은 다른 시스템끼리 다양한 종류의 데이터를 손쉽게 교환할 수 있도록 해줌
    • XML은 고정된 태그가 없어서 필요에 따라 언제든지 새롭게 만들 수 있어 확장성이 좋음
    • XML은 데이터를 보여주지 않고, 데이터를 전달하고 저장하는 것만을 목적
    • XML은 텍스트 데이터 형식의 언어로 모든 XML 문서는 유니코드 문자로만 이루어짐
    <name> 승민이네 치킨 </name>,
    <loctaion> 산기대학로123 </location>

     

    [ JSON ]

    • JSON은 JavaScript Object Notation의 약자
    • JSON은 좀 더 쉽게 데이터를 교환하고 저장하기 위하여 만들어진 텍스트 기반의 데이터 교환 표준
    • JSON은 자바스크립트를 기반으로 만들어짐
    • JSON은 XML의 대안으로서 좀 더 쉽게 데이터를 교환하고 저장하기 위하여 고안되었음
    • JSON은 텍스트 기반이므로 어떠한 프로그래밍 언어에서도 JSON 데이터를 읽고 사용할 수 있음

     

    [ JSON 특징 ]

    • JSON은 자바스크립트를 확장하여 만들어짐
    • JSON은 자바스크립트 객체 표기법을 따름
    • JSON은 사람과 기계가 모두 읽기 편하도록 고안
    • JSON은 프로그래밍 언어와 운영체제에 독립적
    "name": "승민이네 치킨".
    "location": "산기대학로123"

     

    [ JSON과 XML의 차이점 ]

    • JSON은 종료 태그를 사용하지 않음
    • JSON의 구문이 XML의 구문보다 더 짧음
    • JSON 데이터가 XML 데이터보다 더 빨리 읽고 쓸 수 있음
    • XML은 배열을 사용할 수 없지만, JSON은 배열을 사용 가능
    • XML은 XML 파서로 파싱되며, JSON은 자바스크립트 표준 함수인 eval() 함수로 파싱

     

    [ JSON과 XML의 공통점 ]

    • 데이터를 저장하고 전달하기 위해 고안
    • 기계뿐만 아니라 사람도 쉽게 읽을 수 있음
    • 계층적인 데이터 구조
    • 다양한 프로그래밍 언어에 의해 파싱 가능
    • XMLHttpRequest 객체를 이용하여 서버로부터 데이터를 전송받을 수 있음

     

    [ JSON과 XML의 사용 ]

    • XML 문서는 XML DOM(Document Object Model)을 이용하여 해당 문서에 접급ㄴ
    • 하지만 JSON은 문자열을 전송받은 후에 해당 문자열을 바로 파싱하므로, XML보다 더욱 빠른 처리 속도를 보여준다. 따라서 HTML과 자바스크립트가 연동되어 빠른 응답이 필요한 웹 환경에서 많이 사용
    • JSON은 전송받은 데이터의 무결성을 사용자가 직접 검증해야 한다.
      따라서 데이터의 검증이 필요한 곳에서는 스키마를 사용하여 데이터의 무결성을 검증할 수 있는 XML이 아직도 많이 사용

     

     

    /*   별도 모르는 단어

    마크업 언어: 문서의 내용을 구체적으로 전달하기 위한 추가적인 정보 표시 언어

    파싱: 데이터를 조립해 원하는 데이터를 빼내는 프로그램을 하는 것

    파서: 파싱을 수행하는 프로그램

    */

     

    '프로그래밍 기초 공부' 카테고리의 다른 글

    HTTP란?  (2) 2022.09.23
    API와 REST API  (0) 2022.09.19
    객체 지향 프로그래밍(OOP)이란 무엇일까?  (0) 2022.09.16
    interface란  (0) 2022.09.12
    git과 git workflow  (0) 2022.09.12
Designed by Tistory.