본문 바로가기
카테고리 없음

[XML, JSON] XML과 JSON

by hbIncoding 2024. 7. 17.
  1. JSON과 XML의 공통점
  • 데이터를 저장하고 전달하기 위해 고안되었다.
  • 기계뿐만 아니라 사람도 쉽게 읽을 수 있다.
  • 계층적인 데이터 구조를 가진다.
  • 다양한 프로그래밍 언어에 의해 파싱 될 수 있다.
  • XMLHttpRequest 객체를 이용하여 서버로부터 데이터를 전송받을 수 있다.

 

2. JSON과 XML의 차이점

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

3. Tokenizer

  • 토크나이저는 입력된 소스 코드를 읽어들여서 토큰(Token) 단위로 분해하는 작업을 수행합니다.
  • 토큰은 소스 코드의 최소 단위로, 변수 이름, 상수 값, 연산자, 키워드 등과 같이 프로그래밍 언어에서 의미 있는 최소 단위입니다.
  • 토크나이저는 일반적으로 정규 표현식과 같은 패턴 매칭을 사용하여 소스 코드를 토큰 단위로 분리합니다.

4. Lexer

  • 텍스트를 받아서 한 글자 한 글자 읽어나가다가 의미를 가진 단어를 만나면 Lexer에서는 그 단어를 전체 텍스트로부터 잘라서 Token이란 것으로 만듭니다.
  • 렉서는 토큰의 유형을 인식하고, 각 토큰에 대해 메타 데이터를 추가할 수 있습니다.
  • 토크나이저는 일반적으로 정규 표현식과 같은 패턴 매칭을 사용하여 소스 코드를 토큰 단위로 분리합니다.

5. parser

  • 파서는 렉서에서 생성된 토큰 스트림을 가져와서 문법 규칙에 따라 문장 구조를 분석하고 해석합니다.
  • 파서는 문법 규칙에 따라 토큰의 순서와 조합을 검사하여 프로그램의 구조를 파악합니다.