데이터 형식

김기만·2023년 12월 24일
0

CS

목록 보기
1/3

1. JSON과 직렬화와 역직렬화

JSON(Javascript Object Notatin)
	1.1 JS 객체 문법으로 구조화된 데이터 교환 방식.
	1.2 PYTHON, JS, JAVA 등 여러 언어에서 데이터 교환형식으로 쓰이며, 단순 배열, 문자열로도 표현 가능.
    1.3 JSON은 여러 언어 및 프레임워크에서 독립적이다.(언어의 버젼이 올라가도 JSON은 독립적임. 그래서 데이터 교환방식으로 주로 사용.)
    1.4 JSON은 메소드(Fn)과 undefined 등을 포함할 수 없다.
    1.5 직렬화, 역직렬화
    	1.5.1 직렬화: 외부의 시스템에서도 사용할 수 있도록 바이트(byte) 형태로 데이터를 변환하는 것(ex> JSON.parse() 등)
        1.5.2 역직렬화: 외부의 시스템의 데이터를 사용할 수 있도록 데이터틑 변환하는 것(ex> JSON.stringify() 등)
    1.6 JSON은 주로 API의 반환형태 및 시스템을 구성하는 설정파일에 활용됨.    
    

2. XML

XML(Extensible Markup Language)
    2.1 마크업은 태그 등을 이용하여 문서나 데이터의 구조를 나나태는 방법
    2.2 구성
    	2.2.1 프롤로그: 버전, 인코딩 등
        2.2.2 루트요소(단 한개만 존재 가능)
        2.2.3 하위 요소들
//프롤로그
<?xml version="1.0" encoding="UTF-8"?>
	//루트요소
	<OSTList>
		//하위 요소들
		<OST like="1">
			<name>name1</name>
			<song>song1</song>
		</OST>
        <OST like="2">
			<name>name2</name>
			<song>song2</song>
		</OST>
</OSTList>
	2.3 HTML과 XML 비교
    	2.3.1 HTML은 데이터 표시가 목적이고, XML은 데이터를 저장 및 전송함에 목적을 둠.
        2.3.2 HTML은 미리 정의된 태그만을 사용해야 하지만 XML은 사용자가 고유의 태그를 만들고 정의 가능.
        2.3.3 XML는 태그의 대소문자를 구분함.(ex> <Book></book>으로 사용 시 에러 발생)
    2.4 JSON과의 비교
    	2.4.1 JS Object로 변환 시 별도의 라이브러리가 필요하여 JSON보다는 더 많은 노력이 요구됨.(ex> xml2json 등)
    2.5 Sitemap.xml
    	2.5.1 xml은 주로 sitemap.xml에 사용됨.
        2.5.2 sitemap.xml은 서비스 내의 모든 페이지들을 리스트업한 데이터임.
        2.5.3 크롤링 중 일부 페이지를 누락됐을 경우(사이트가 매우 크거나 서로의 링크가 종속적이 않을 경우 크롤링 시 누락 가능성이 있음), 
        이를 sitemap.xml이 방지하고 모든 페이지를 크롤링할 수 있도록 도와줌.
profile
나도 누군가의 12시다. by.하스스톤 야생

0개의 댓글