๐ŸงณTOML โ†” JSON ๋ณ€ํ™˜๊ธฐ

TOML ๊ณผ JSON ์„ ์–‘๋ฐฉํ–ฅ์œผ๋กœ ๋ฐ”๊พธ๊ณ , ์™•๋ณตํ•˜๋ฉด ํƒ€์ž…์ด ๋‹ฌ๋ผ์ง€๋Š” ๊ฐ’์„ ํ•จ๊ป˜ ์งš์–ด ์ค๋‹ˆ๋‹ค.

์™•๋ณต์ด ๋ฌด์†์‹ค์ด ์•„๋‹Œ ์ง€์ 

TOML ์ชฝJSON ์œผ๋กœ ๋ฐ”๊พธ๋ฉด๋˜๋Œ๋ฆฌ๋ฉด
๋‚ ์งœยท์‹œ๊ฐ ํƒ€์ž…๋”ฐ์˜ดํ‘œ ์—†๋Š” ์ „์šฉ ํƒ€์ž…์ด ์—†์–ด ๋ฌธ์ž์—ด์ด ๋ฉ๋‹ˆ๋‹ค๋ฌธ์ž์—ด๋กœ ๋‚จ์•„ ๋‚ ์งœ ํƒ€์ž…์ด ์‚ฌ๋ผ์ง‘๋‹ˆ๋‹ค
1.0 ๊ฐ™์€ ์‹ค์ˆ˜JSON ์ˆซ์ž ํ•˜๋‚˜๋กœ ํ•ฉ์ณ์ง‘๋‹ˆ๋‹ค์ •์ˆ˜ 1 ๋กœ ๋˜๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค
inf ยท nanJSON ์— ํ‘œ๊ธฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค๋ณต์›ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค
64๋น„ํŠธ ์ •์ˆ˜JSON ์ˆซ์ž๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ 2์˜ 53์Šน๊นŒ์ง€๋งŒ ์ •ํ™•ํ•ฉ๋‹ˆ๋‹ค๋์ž๋ฆฌ๊ฐ€ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
์ธ๋ผ์ธ ํ…Œ์ด๋ธ”ํ‘œ์ค€ ํ…Œ์ด๋ธ”๊ณผ ๋˜‘๊ฐ™์€ ๊ฐ์ฒด๊ฐ€ ๋ฉ๋‹ˆ๋‹ค์–ด๋А ํ‘œ๊ธฐ์˜€๋Š”์ง€ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค
๋ฐฐ์—ด ํ…Œ์ด๋ธ”๊ฐ์ฒด ๋ฐฐ์—ด์ด ๋ฉ๋‹ˆ๋‹ค์ธ๋ผ์ธ ๊ฐ์ฒด ๋ฐฐ์—ด๊ณผ ๊ตฌ๋ถ„๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค
์ฃผ์„ ยท ํ‚ค ์ˆœ์„œ์˜ฎ๊ฒจ์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค์‚ฌ๋ผ์ง„ ์ฑ„๋กœ ๋‚จ์Šต๋‹ˆ๋‹ค

์ง€์› ๋ฒ”์œ„๋Š” ๊ธฐ๋ณธยท๋ฆฌํ„ฐ๋Ÿด ๋ฌธ์ž์—ด๊ณผ ์—ฌ๋Ÿฌ ์ค„ ๋ฌธ์ž์—ด, ์ •์ˆ˜(16ยท8ยท2์ง„ ํ‘œ๊ธฐ ํฌํ•จ), ์‹ค์ˆ˜, ๋ถˆ๋ฆฌ์–ธ, ๋„ค ๊ฐ€์ง€ ๋‚ ์งœยท์‹œ๊ฐ, ๋ฐฐ์—ด, ์ธ๋ผ์ธ ํ…Œ์ด๋ธ”, ํ‘œ์ค€ ํ…Œ์ด๋ธ”, ๋ฐฐ์—ด ํ…Œ์ด๋ธ”, ์ ์œผ๋กœ ์ด์€ ํ‚ค๊นŒ์ง€์ž…๋‹ˆ๋‹ค. ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์—์„œ๋Š” JSON ์˜ null ์„ ๋‹ด์„ TOML ํ‘œ๊ธฐ๊ฐ€ ์—†์–ด ์˜ค๋ฅ˜๋กœ ์•Œ๋ ค ์ค๋‹ˆ๋‹ค.

๊ด€๋ จ๋œ ๋„๊ตฌ

๋„๊ตฌ ์„ค๋ช…

TOML ์„ค์ •์„ JSON ์œผ๋กœ, JSON ์„ TOML ๋กœ ๋ฐ”๊ฟ‰๋‹ˆ๋‹ค. ๋ฐฉํ–ฅ์„ ๊ณ ๋ฅด๊ณ  ๋ถ™์—ฌ๋„ฃ์œผ๋ฉด ๋ฐ”๋กœ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค๊ณ , ๋ฌธ๋ฒ• ์˜ค๋ฅ˜๊ฐ€ ์žˆ์œผ๋ฉด ๋ช‡ ํ–‰์—์„œ ๋ฌด์—‡์ด ์ž˜๋ชป๋๋Š”์ง€ ์ง‘์–ด ์ค๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ ์•„๋ž˜์—๋Š” ์ตœ์ƒ์œ„ ํ‚ค ๊ฐœ์ˆ˜์™€ ์ „์ฒด ๊ฐ’ ๊ฐœ์ˆ˜, ํ‘œ์ค€ ํ…Œ์ด๋ธ”๊ณผ ๋ฐฐ์—ด ํ…Œ์ด๋ธ” ๊ฐœ์ˆ˜๋ฅผ ์„ธ์–ด ๊ตฌ์กฐ๊ฐ€ ์˜๋„๋Œ€๋กœ ์˜ฎ๊ฒจ์กŒ๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋„๊ตฌ์˜ ์ค‘์‹ฌ์€ ๋ณ€ํ™˜ ์ž์ฒด๋ณด๋‹ค ์™•๋ณต ์†์‹ค์ž…๋‹ˆ๋‹ค. TOML ์—๋Š” ๋”ฐ์˜ดํ‘œ ์—†์ด ์“ฐ๋Š” ๋‚ ์งœยท์‹œ๊ฐ ํƒ€์ž…์ด ์žˆ๊ณ  ์ •์ˆ˜์™€ ์‹ค์ˆ˜๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€๋งŒ JSON ์—๋Š” ๊ทธ๋Ÿฐ ๊ตฌ๋ถ„์ด ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ•œ ๋ฒˆ JSON ์œผ๋กœ ๋‚˜๊ฐ”๋‹ค ๋Œ์•„์˜ค๋ฉด ๋‚ ์งœ๊ฐ€ ๋ฌธ์ž์—ด๋กœ, 1.0 ์ด ์ •์ˆ˜ 1 ๋กœ ๋ฐ”๋€๋‹ˆ๋‹ค. 2026๋…„ 10์›” ๊ธฐ์ค€ TOML 1.0.0 ๊ทœ๊ฒฉ๊ณผ JSON ๊ทœ๊ฒฉ์„ ๋Œ€์กฐํ•ด ์ด๋Ÿฐ ์ž๋ฆฌ๋ฅผ ํ‚ค ๊ฒฝ๋กœ์™€ ํ•จ๊ป˜ ๋ชฉ๋ก์œผ๋กœ ๋ณด์—ฌ ์ฃผ๊ณ , ์•„๋ž˜ ํ‘œ์— ์–ด๋–ค ํ‘œ๊ธฐ๊ฐ€ ์™œ ๋ณต์›๋˜์ง€ ์•Š๋Š”์ง€ ์ •๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์ง€์› ๋ฒ”์œ„๋Š” ๋ฌธ์ž์—ด๊ณผ ์—ฌ๋Ÿฌ ์ค„ ๋ฌธ์ž์—ด, ์ •์ˆ˜์™€ ์‹ค์ˆ˜, ๋ถˆ๋ฆฌ์–ธ, ๋„ค ๊ฐ€์ง€ ๋‚ ์งœยท์‹œ๊ฐ, ๋ฐฐ์—ด, ์ธ๋ผ์ธ ํ…Œ์ด๋ธ”, ํ‘œ์ค€ ํ…Œ์ด๋ธ”, ๋ฐฐ์—ด ํ…Œ์ด๋ธ”, ์ ์œผ๋กœ ์ด์€ ํ‚ค๊นŒ์ง€์ž…๋‹ˆ๋‹ค. JSON ์˜ null ์€ TOML ์— ๋Œ€์‘ํ•˜๋Š” ํ‘œ๊ธฐ๊ฐ€ ์—†์–ด ์˜ค๋ฅ˜๋กœ ์•Œ๋ ค ์ค๋‹ˆ๋‹ค. ์Šคํ‚ค๋งˆ ๊ฒ€์ฆ๊ณผ ์„ค์ • ๋ณ‘ํ•ฉ์€ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

๋‚ ์งœ๊ฐ€ ์™œ ๋”ฐ์˜ดํ‘œ์— ๊ฐ‡ํžˆ๋‚˜์š”?

TOML ์€ ๋‚ ์งœ์™€ ์‹œ๊ฐ์„ ๋”ฐ์˜ดํ‘œ ์—†์ด ์“ฐ๋Š” ์ „์šฉ ํƒ€์ž…์œผ๋กœ ๊ฐ–๊ณ  ์žˆ์ง€๋งŒ JSON ์—๋Š” ๊ทธ๋Ÿฐ ํƒ€์ž…์ด ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ JSON ์œผ๋กœ ์˜ฎ๊ธฐ๋Š” ์ˆœ๊ฐ„ ๋ฌธ์ž์—ด์ด ๋˜๊ณ , ๋˜๋Œ๋ ค๋„ ๋ฌธ์ž์—ด๋กœ ๋‚จ์Šต๋‹ˆ๋‹ค. ์ด ๋„๊ตฌ๋Š” ๊ทธ ๊ฐ’์„ ๋”ฐ๋กœ ๋ชจ์•„ ์•Œ๋ ค ์ค๋‹ˆ๋‹ค.

JSON ์˜ null ์€ ์™œ ๋ณ€ํ™˜๋˜์ง€ ์•Š๋‚˜์š”?

TOML 1.0.0 ์—๋Š” null ์„ ๋œปํ•˜๋Š” ํ‘œ๊ธฐ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋นˆ ๋ฌธ์ž์—ด์ด๋‚˜ 0 ์œผ๋กœ ๋ฐ”๊พธ๋ฉด ๋œป์ด ๋‹ฌ๋ผ์ง€๋ฏ€๋กœ ์ž„์˜๋กœ ๊ณ ๋ฅด์ง€ ์•Š๊ณ , ์–ด๋А ํ‚ค๊ฐ€ ๊ฑธ๋ ธ๋Š”์ง€ ์•Œ๋ ค ์ฃผ๊ณ  ๋ฉˆ์ถฅ๋‹ˆ๋‹ค.

์ด ๋„๊ตฌ๊ฐ€ ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?

์Šคํ‚ค๋งˆ ๊ฒ€์ฆ, ์„ค์ • ํŒŒ์ผ ๋ณ‘ํ•ฉ, YAML ์ด๋‚˜ XML ๋ณ€ํ™˜์€ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. TOML ๊ณผ JSON ์‚ฌ์ด ๋ณ€ํ™˜๊ณผ ์™•๋ณต ์†์‹ค ํ‘œ์‹œ๋งŒ ํ•ฉ๋‹ˆ๋‹ค.