×
Crocus
공부한 내용을 정리하는 블로그로 시작한
Crocus는 2014년 1월 14일 부터 시작하여
현재 월 6만명, 총 2,877,124명의 방문자 수를 기록하고 있습니다.
Donation
이제 많은 사용자들이 이용하는 만큼
더 다양한 서비스 개발/제공을 위해 후원금을 모금하고자 합니다.
후원을 해주시는 분들은 Donators 명단에 성명, 후원금을 기입해드리며
Crocus 블로그가 아닌 다른 곳에 정리해둔 저만의 내용을 공유해 드리고자 합니다.
Account
예금주 : 고관우
신한은행 : 110-334-866541
카카오뱅크 : 3333-01-7888060

👉 후원 페이지 바로가기 Donators
익명 : 5000원(Crocus응원합니다.)
busyhuman: 5000원(유용한 지식 감사합니다.)
익명 : 5000원(알고리즘 학습러)
반응형

XML, JSON?

Xml과 Json 파일 포멧처럼 타 시스템 간에 데이터를 주고 받을 때는 데이터 포맷에 대한 약속이 필요하다.

 

혼자 시스템을 개발하거나 내부 시스템 끼리는 "1-김태민-강사,2-아무개-학생" 이라는 문자열을 만들어서 "-(하이픈)"을 파싱해서 순서대로 "1"은 일련번호, "김태민"은 이름, "강사"는 구분이라는 규칙과, ",(콤마)"는 리스트를 나타내는 구분자라는 규칙을 세울 수 있다.

 

하지만 문제는 타 시스템들과의 연동을 할 때이다.

내부에서 세운 규칙을 타 시스템들과 데이터를 주고 받을때다 문서로주고 받기도 번거롭고,

데이터 규칙에 대한 문서들이 많아지게 되는 문제가 있습니다.

 

그래서 Xml이나 Json과 같은 데이터 포맷을 정의하고 그 포맷에는 규칙도 있습니다. 

 

 

 

XML 포멧은 다음과 같다.

태그형식을 통해서 Key와 Value를 구분하고, 태그안에 태그를 넣어서 부모와 자식관계의 구조를 나타낸다.

그런데 위에 Object와 Array 부분은 표시를 해놨지만 Xml 포맷상으로는 구분이 안되는 부분도 존재한다.

 

 

JSON 포멧은 다음과 같다.

그리고 Object 일 경우 {} 로 감싸주고있고, Array일 경우 []로 감싸주고 있어서 구분도 되어있다.

기타 여러 부분을 비교해보아도 XML보다는 확실히 가독성이 올라갔지만 {}, [], "" 이런 문자들이 너무 많아서 가독성을 좀 더 높힐 방법이 필요해보인다

 

 

 

Yaml

 

Yaml 포멧은 다음과 같다.

-(하이픈)을 통해서 Array임을 알 수도 있고 불필요한 [], {} , "" 같은 문자들이 확연히 사라져 가독성이 많이 향상되었다.

yaml 포맷은 현재 다양한곳에서 사용되고 있다.

쿠버네티스에서도 API를 전송할땐 json 규격도 사용되지만 일반적으로 yaml을 권장하고 있다.

 

 

아래 표는 가독성 비교표이다.

 

https://www.inflearn.com/questions/16184

 

반응형

'Applied > AWS' 카테고리의 다른 글

[AWS] Lambda란?  (0) 2022.09.18
[EKS] Kubenetes 명령어 연습하기  (0) 2022.09.14
AWS aurora database 개념  (0) 2022.09.08
AWS DynamoDB 개념  (0) 2022.09.07