YAML은 XML, C, 파이썬, 펄, RFC2822에서 정의된 e-mail 양식에서 개념을 얻어 만들어진 '사람이 쉽게 읽을 수 있는' 데이터 직렬화 양식이다. 2001년에 클라크 에반스가 고안했고, Ingy dot Net 및 Oren Ben-Kiki와 함께 디자인했다.
YAML이라는 이름은 "YAML은 마크업 언어가 아니다 (YAML Ain't Markup Language)” 라는 재귀적인 이름에서 유래되었다. 원래 YAML의 뜻은 “또 다른 마크업 언어 (Yet Another Markup Language)”였으나, YAML의 핵심은 문서 마크업이 아닌 데이터 중심에 있다는 것을 보여주기 위해 이름을 바꾸었다. 오늘날 XML과 JSON이 데이터 직렬화에 주로 쓰이기 시작하면서, 많은 사람들이 YAML을 '가벼운 마크업 언어'로 사용하려 하고 있다.
* 마크업 언어(markup 言語, markup language)는 태그 등을 이용하여 문서나 데이터의 구조를 명기하는 언어의 한 가지이
길이나 특수문자를 얼마나 안쓰느냐를 가지고 본다면 YAML 형식이 훨씬 간편하다.
다만, 개발했던 경험으로는 yaml이 상당히 불안정한 언어라고 생각한다.
사용하면서 매번 느끼는 거지만 띄어쓰기나 탭 한자만 틀려도 인식이 안되기도 하며,
띄어쓰기를 사용한 순서나 탭을 사용한 순서에 따라서 개발툴에서 에러를 뱉기도 한다.(include 에러 같은것)
이런이유로 외부의 yaml 문서를 복사붙이기 했을 때 동작 안하는 경우도 있었다.
업무볼때도 이런 문제 때문에 yaml형식보단 xml형식을 선호하는 걸 많이 봤는데, 그럼에도 도커 같은 곳에선 사용하다보니 익혀둘 수 밖에 없다.
'IT기술 > CS(ComputerScience)' 카테고리의 다른 글
온디맨드(On-Demand) 서비스 (0) | 2023.04.17 |
---|---|
yaml 문법 (0) | 2023.04.17 |
[DNS] 퓨니코드(Punycode) 란? - 한글 도메인 (0) | 2023.03.27 |
[용어] AS-IS, TO-BE (0) | 2023.03.22 |
SOA, EAI, ESB 개념 정리 (0) | 2023.03.21 |