HanSol's Oak Cask

YAML (XML vs JSON vs YAML) ๋ณธ๋ฌธ

์šฉ์–ด, ๊ฐœ๋…

YAML (XML vs JSON vs YAML)

HanSol_Lim 2025. 2. 20. 10:35

๐Ÿ“„ XML, JSON, YAML ๋น„๊ต

 

ํ•ญ๋ชฉ XML
(Extensible Markup Language) 
JSON
(JavaScript Object Notation)
YAML
(YAML Ain't Markup Language)
ํ˜•์‹ ํƒœ๊ทธ ๊ธฐ๋ฐ˜ ๋งˆํฌ์—… ์–ธ์–ด (<ํƒœ๊ทธ>๋‚ด์šฉ</ํƒœ๊ทธ>) ํ‚ค-๊ฐ’ ์Œ์˜ ์ค‘๊ด„ํ˜ธ({})์™€ ๋ฐฐ์—ด์˜ ๋Œ€๊ด„ํ˜ธ([]) ๋“ค์—ฌ์“ฐ๊ธฐ ๊ธฐ๋ฐ˜, ๊ฐ„๊ฒฐํ•œ ๋ฌธ๋ฒ•
๊ฐ€๋…์„ฑ ๋ณต์žกํ•˜๊ณ  ์žฅํ™ฉํ•จ ๊ฐ„๊ฒฐํ•˜๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์›€ ๊ฐ€์žฅ ๊ฐ„๊ฒฐํ•˜๊ณ  ์‚ฌ๋žŒ ์นœํ™”์ 
๊ตฌ์กฐ ํ‘œํ˜„ ๊ณ„์ธต์  ๊ตฌ์กฐ ํ‘œํ˜„ ์šฉ์ด ๊ณ„์ธต์  ๊ตฌ์กฐ ํ‘œํ˜„ ๊ฐ€๋Šฅ ๋“ค์—ฌ์“ฐ๊ธฐ๋ฅผ ํ†ตํ•œ ๊ณ„์ธต์  ๊ตฌ์กฐ ๋ช…ํ™•
๋ฐ์ดํ„ฐ ํƒ€์ž… ์ง€์› ํ…์ŠคํŠธ ์œ„์ฃผ, ํƒ€์ž… ๋ช…์‹œ ํ•„์š” ๋ฌธ์ž์—ด, ์ˆซ์ž, ๋ถˆ๋ฆฌ์–ธ, ๋ฐฐ์—ด, ๊ฐ์ฒด ์ง€์› JSON๊ณผ ์œ ์‚ฌํ•˜๋‚˜ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋” ๊ฐ„๊ฒฐํ•˜๊ฒŒ ์ง€์›
์ฃผ์„ ์ง€์› <!-- ์ฃผ์„ --> ์‚ฌ์šฉ ๊ฐ€๋Šฅ ์ฃผ์„ ์ง€์›ํ•˜์ง€ ์•Š์Œ # ์ฃผ์„ ์‚ฌ์šฉ ๊ฐ€๋Šฅ
ํŒŒ์‹ฑ ์†๋„ ๋А๋ฆผ
(๋ฌด๊ฒ๊ณ  ๋ณต์žกํ•œ ํŒŒ์‹ฑ ๊ณผ์ •)
๊ฐ€์žฅ ๋น ๋ฆ„
(๊ฐ€๋ณ๊ณ  ๊ฐ„๋‹จํ•œ ํŒŒ์‹ฑ ๊ณผ์ •)
๋น ๋ฆ„
(๊ตฌ์กฐ๊ฐ€ ๋‹จ์ˆœํ•ด ํŒŒ์‹ฑ ์šฉ์ด)
๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์—„๊ฒฉํ•œ ๊ตฌ์กฐ๋กœ ๋ฌด๊ฒฐ์„ฑ ๋ณด์žฅ ๋น„๊ต์  ์œ ์—ฐํ•œ ๊ตฌ์กฐ ์œ ์—ฐํ•˜์ง€๋งŒ ๋“ค์—ฌ์“ฐ๊ธฐ ์‹ค์ˆ˜๋กœ ์˜ค๋ฅ˜ ๋ฐœ์ƒ ๊ฐ€๋Šฅ
ํ™•์žฅ์„ฑ ํ™•์žฅ์„ฑ ๋›ฐ์–ด๋‚จ (์Šคํ‚ค๋งˆ ์ •์˜ ๊ฐ€๋Šฅ) ๊ฐ„๋‹จํ•œ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์— ์ ํ•ฉ ๋ณต์žกํ•œ ๊ตฌ์กฐ๋ณด๋‹ค๋Š” ๊ฐ„๋‹จํ•œ ์„ค์ • ํŒŒ์ผ์— ์ ํ•ฉ
์‚ฌ์šฉ ์šฉ๋„ ์›น ์„œ๋น„์Šค (SOAP), ์„ค์ • ํŒŒ์ผ, ๋ฐ์ดํ„ฐ ๊ตํ™˜ REST API, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ CI/CD ํŒŒ์ดํ”„๋ผ์ธ ์„ค์ •, Kubernetes ์„ค์ •, DevOps
๊ธฐ์ˆ  ์Šคํƒ ํ˜ธํ™˜์„ฑ ๋‹ค์–‘ํ•œ ์–ธ์–ด์—์„œ ์ง€์› (Java, .NET ๋“ฑ) ๋Œ€๋ถ€๋ถ„์˜ ์–ธ์–ด์—์„œ ๊ธฐ๋ณธ ์ง€์› Python, Ruby, Docker, Kubernetes ๋“ฑ์—์„œ ์„ ํ˜ธ

๐Ÿ” ์š”์•ฝ ๋ฐ ์žฅ๋‹จ์ 

โœ… XML

  • ์žฅ์ : ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ๋ณด์žฅ, ์Šคํ‚ค๋งˆ ๊ธฐ๋ฐ˜ ๊ฒ€์ฆ, ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ํ‘œํ˜„์— ์œ ๋ฆฌ
  • ๋‹จ์ : ๋ฌธ๋ฒ•์ด ๋ณต์žกํ•˜๊ณ  ๊ธธ์–ด์„œ ๊ฐ€๋…์„ฑ์ด ๋–จ์–ด์ง, ํŒŒ์‹ฑ ์†๋„ ๋А๋ฆผ

โœ… JSON

  • ์žฅ์ : ๊ฐ„๊ฒฐํ•œ ๋ฌธ๋ฒ•, ์›น ๋ฐ ๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ์—์„œ ๋น ๋ฅธ ๋ฐ์ดํ„ฐ ์ „์†ก์— ์ตœ์ ํ™”, ๋Œ€๋ถ€๋ถ„์˜ ์–ธ์–ด์—์„œ ์ง€์›
  • ๋‹จ์ : ์ฃผ์„ ์ง€์› ๋ถ€์กฑ, ๋งค์šฐ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ํ‘œํ˜„์—๋Š” ์ œํ•œ์ 

โœ… YAML

  • ์žฅ์ : ์‚ฌ๋žŒ์—๊ฒŒ ๊ฐ€์žฅ ์นœ์ˆ™ํ•œ ๋ฌธ๋ฒ•, ์ฃผ์„ ์ง€์›, ์„ค์ • ํŒŒ์ผ์— ์ตœ์ ํ™”
  • ๋‹จ์ : ๋“ค์—ฌ์“ฐ๊ธฐ ์˜ค๋ฅ˜ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ, ๋Œ€๊ทœ๋ชจ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ์—๋Š” ๋ถ€์ ํ•ฉํ•  ์ˆ˜ ์žˆ์Œ

๐Ÿ’ก ์–ธ์ œ ๋ฌด์—‡์„ ์‚ฌ์šฉํ• ๊นŒ?

  • XML: ๋ณต์žกํ•œ ํŠธ๋žœ์žญ์…˜ ์‹œ์Šคํ…œ, ํ‘œ์ค€ํ™”๋œ ๋ฐ์ดํ„ฐ ํ†ต์‹  (์˜ˆ: SOAP)
  • JSON: ์›น API ํ†ต์‹ , ํ”„๋ก ํŠธ์—”๋“œ-๋ฐฑ์—”๋“œ ๊ฐ„ ๋ฐ์ดํ„ฐ ๊ตํ™˜
  • YAML: ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ค์ • ํŒŒ์ผ, DevOps ํ™˜๊ฒฝ์˜ ๊ตฌ์„ฑ ๊ด€๋ฆฌ (์˜ˆ: Docker Compose, Kubernetes)

 

๐Ÿ“š ์ฝ”๋“œ ์˜ˆ์ œ: ํšŒ์‚ฌ ์กฐ์ง ๋ฐ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

์ด ์ฝ”๋“œ ์˜ˆ์ œ๋Š” IT ๊ธฐ์—…์˜ ์กฐ์ง ๊ตฌ์กฐ, ์ง์› ์ •๋ณด, ๊ธฐ์ˆ  ์Šคํƒ, ํ”„๋กœ์ ํŠธ ์„ธ๋ถ€์‚ฌํ•ญ์„ XML, JSON, YAML ํ˜•์‹์œผ๋กœ ๊ตฌํ˜„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐ ํฌ๋งท๋ณ„๋กœ ๋™์ผํ•œ ๋‚ด์šฉ์„ ๋‹ค๋ฅด๊ฒŒ ํ‘œํ˜„ํ–ˆ์œผ๋ฉฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.


๐Ÿข 1. ํšŒ์‚ฌ(Company) ์ •๋ณด

  • ํšŒ์‚ฌ๋ช…(name): TechCorp
  • ์„ค๋ฆฝ์—ฐ๋„(established): 2001

๐Ÿฌ 2. ๋ถ€์„œ(Departments) ์ •๋ณด

  • ๋ถ€์„œ ID(id) ๋ฐ ๋ถ€์„œ๋ช…(name):
    • D001: ๊ฐœ๋ฐœ๋ถ€์„œ
  • ๋ถ€์„œ์žฅ(Manager):
    • ์ด๋ฆ„(name): ํ™๊ธธ๋™
    • ๋‚˜์ด(age): 40
    • ์ด๋ฉ”์ผ(email): honggildong@techcorp.com
    • ๋ณด์œ  ์ž๊ฒฉ์ฆ(certifications):
      • AWS Solutions Architect (๋ ˆ๋ฒจ: ์ „๋ฌธ๊ฐ€)
      • ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ (๋ ˆ๋ฒจ: ์ค‘๊ธ‰)

๐Ÿ‘จ‍๐Ÿ’ป 3. ์ง์›(Employees) ์ •๋ณด

  • ์ง์› ๋ชฉ๋ก:
    1. ๊น€์ฒ ์ˆ˜ (E101)
      • ๊ณ ์šฉ ํ˜•ํƒœ(fullTime): ์ •๊ทœ์ง
      • ๋‚˜์ด(age): 30
      • ์ง๋ฌด(position): ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž
      • ๋ณด์œ  ๊ธฐ์ˆ  ์Šคํƒ(skills):
        • Python (Django ํ”„๋ ˆ์ž„์›Œํฌ)
        • Java (Spring Boot ํ”„๋ ˆ์ž„์›Œํฌ)
      • ์ฃผ์†Œ(address): ์„œ์šธ, ์šฐํŽธ๋ฒˆํ˜ธ 12345
    2. ์ด์˜ํฌ (E102)
      • ๊ณ ์šฉ ํ˜•ํƒœ(fullTime): ๊ณ„์•ฝ์ง
      • ๋‚˜์ด(age): 28
      • ์ง๋ฌด(position): ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž
      • ๋ณด์œ  ๊ธฐ์ˆ  ์Šคํƒ(skills):
        • JavaScript (React ํ”„๋ ˆ์ž„์›Œํฌ)
        • TypeScript (Angular ํ”„๋ ˆ์ž„์›Œํฌ)

๐Ÿ“ 4. ํ”„๋กœ์ ํŠธ(Projects) ์ •๋ณด

  • ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก:
    1. ์Šค๋งˆํŠธ ํŒฉํ† ๋ฆฌ ์‹œ์Šคํ…œ
      • ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ(code): P001
      • ์ƒํƒœ(status): ์ง„ํ–‰์ค‘
      • ์˜ˆ์‚ฐ(budget): 50,000,000 KRW
      • ๋งˆ๊ฐ์ผ(deadline): 2025-12-31
    2. AI ์ฑ—๋ด‡ ์„œ๋น„์Šค
      • ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ(code): P002
      • ์ƒํƒœ(status): ์™„๋ฃŒ
      • ์˜ˆ์‚ฐ(budget): 40,000 USD
      • ๋งˆ๊ฐ์ผ(deadline): 2024-09-30

๐ŸŸฆ XML ์˜ˆ์ œ (์ฃผ์„ ํฌํ•จ, ์†์„ฑ ๋ฐ ์ค‘์ฒฉ ๊ตฌ์กฐ ์‚ฌ์šฉ)

<!-- ์ง์› ์ •๋ณด ๋ฐ์ดํ„ฐ -->
<company name="TechCorp" established="2001">
    <departments>
        <!-- ๊ฐœ๋ฐœ ๋ถ€์„œ ์ •๋ณด -->
        <department id="D001">
            <name>๊ฐœ๋ฐœ๋ถ€์„œ</name>
            <manager>
                <name>ํ™๊ธธ๋™</name>
                <age>40</age>
                <email>honggildong@techcorp.com</email>
                <certifications>
                    <certification level="์ „๋ฌธ๊ฐ€">AWS Solutions Architect</certification>
                    <certification level="์ค‘๊ธ‰">์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ</certification>
                </certifications>
            </manager>
            <employees>
                <employee id="E101" fullTime="true">
                    <name>๊น€์ฒ ์ˆ˜</name>
                    <age>30</age>
                    <position>๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž</position>
                    <skills>
                        <skill language="Python">Django</skill>
                        <skill language="Java">Spring Boot</skill>
                    </skills>
                    <address>
                        <city>์„œ์šธ</city>
                        <postalCode>12345</postalCode>
                    </address>
                </employee>
                <employee id="E102" fullTime="false">
                    <name>์ด์˜ํฌ</name>
                    <age>28</age>
                    <position>ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž</position>
                    <skills>
                        <skill language="JavaScript">React</skill>
                        <skill language="TypeScript">Angular</skill>
                    </skills>
                </employee>
            </employees>
        </department>
    </departments>
    <!-- ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก -->
    <projects>
        <project code="P001" status="์ง„ํ–‰์ค‘">
            <title>์Šค๋งˆํŠธ ํŒฉํ† ๋ฆฌ ์‹œ์Šคํ…œ</title>
            <budget currency="KRW">50000000</budget>
            <deadline>2025-12-31</deadline>
        </project>
        <project code="P002" status="์™„๋ฃŒ">
            <title>AI ์ฑ—๋ด‡ ์„œ๋น„์Šค</title>
            <budget currency="USD">40000</budget>
            <deadline>2024-09-30</deadline>
        </project>
    </projects>
</company>

๐ŸŸฉ JSON ์˜ˆ์ œ (์ค‘์ฒฉ ๊ฐ์ฒด, ๋ฐฐ์—ด, ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…)

{
    "company": {
        "name": "TechCorp",
        "established": 2001,
        "departments": [
            {
                "id": "D001",
                "name": "๊ฐœ๋ฐœ๋ถ€์„œ",
                "manager": {
                    "name": "ํ™๊ธธ๋™",
                    "age": 40,
                    "email": "honggildong@techcorp.com",
                    "certifications": [
                        { "name": "AWS Solutions Architect", "level": "์ „๋ฌธ๊ฐ€" },
                        { "name": "์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ", "level": "์ค‘๊ธ‰" }
                    ]
                },
                "employees": [
                    {
                        "id": "E101",
                        "fullTime": true,
                        "name": "๊น€์ฒ ์ˆ˜",
                        "age": 30,
                        "position": "๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž",
                        "skills": [
                            { "language": "Python", "framework": "Django" },
                            { "language": "Java", "framework": "Spring Boot" }
                        ],
                        "address": { "city": "์„œ์šธ", "postalCode": "12345" }
                    },
                    {
                        "id": "E102",
                        "fullTime": false,
                        "name": "์ด์˜ํฌ",
                        "age": 28,
                        "position": "ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž",
                        "skills": [
                            { "language": "JavaScript", "framework": "React" },
                            { "language": "TypeScript", "framework": "Angular" }
                        ]
                    }
                ]
            }
        ],
        "projects": [
            {
                "code": "P001",
                "status": "์ง„ํ–‰์ค‘",
                "title": "์Šค๋งˆํŠธ ํŒฉํ† ๋ฆฌ ์‹œ์Šคํ…œ",
                "budget": { "amount": 50000000, "currency": "KRW" },
                "deadline": "2025-12-31"
            },
            {
                "code": "P002",
                "status": "์™„๋ฃŒ",
                "title": "AI ์ฑ—๋ด‡ ์„œ๋น„์Šค",
                "budget": { "amount": 40000, "currency": "USD" },
                "deadline": "2024-09-30"
            }
        ]
    }
}

๐ŸŸจ YAML ์˜ˆ์ œ (์ฃผ์„ ํฌํ•จ, ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ํƒ€์ž…, ์ฐธ์กฐ ์‚ฌ์šฉ)

# ํšŒ์‚ฌ ์ •๋ณด
company:
  name: TechCorp
  established: 2001

  # ๋ถ€์„œ ์ •๋ณด
  departments:
    - id: D001
      name: ๊ฐœ๋ฐœ๋ถ€์„œ
      manager:
        name: ํ™๊ธธ๋™
        age: 40
        email: honggildong@techcorp.com
        certifications:
          - name: AWS Solutions Architect  # ์ „๋ฌธ๊ฐ€ ์ž๊ฒฉ์ฆ
            level: ์ „๋ฌธ๊ฐ€
          - name: ์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ              # ์ค‘๊ธ‰ ์ž๊ฒฉ์ฆ
            level: ์ค‘๊ธ‰

      # ์ง์› ๋ชฉ๋ก
      employees:
        - id: E101
          fullTime: true
          name: ๊น€์ฒ ์ˆ˜
          age: 30
          position: ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์ž
          skills:
            - language: Python
              framework: Django
            - language: Java
              framework: Spring Boot
          address:
            city: ์„œ์šธ
            postalCode: 12345

        - id: E102
          fullTime: false
          name: ์ด์˜ํฌ
          age: 28
          position: ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž
          skills:
            - language: JavaScript
              framework: React
            - language: TypeScript
              framework: Angular

  # ํ”„๋กœ์ ํŠธ ์ •๋ณด
  projects:
    - code: P001
      status: ์ง„ํ–‰์ค‘
      title: ์Šค๋งˆํŠธ ํŒฉํ† ๋ฆฌ ์‹œ์Šคํ…œ
      budget:
        amount: 50000000
        currency: KRW
      deadline: 2025-12-31

    - code: P002
      status: ์™„๋ฃŒ
      title: AI ์ฑ—๋ด‡ ์„œ๋น„์Šค
      budget:
        amount: 40000
        currency: USD
      deadline: 2024-09-30

๐Ÿ“ ์ฃผ์š” ๊ธฐ๋Šฅ ์„ค๋ช… ๋ฐ ์ฐจ์ด์ 

๊ธฐ๋Šฅ XML  

  XML JSON YAML
์ค‘์ฒฉ ๊ตฌ์กฐ <ํƒœ๊ทธ> ๋‚ด ์ค‘์ฒฉ๋œ ํƒœ๊ทธ ์‚ฌ์šฉ ๊ฐ์ฒด ๋‚ด ์ค‘์ฒฉ๋œ ๊ฐ์ฒด์™€ ๋ฐฐ์—ด ์‚ฌ์šฉ ๋“ค์—ฌ์“ฐ๊ธฐ๋ฅผ ํ†ตํ•œ ์ค‘์ฒฉ ๊ตฌ์กฐ ํ‘œํ˜„
๋ฐฐ์—ด ํ‘œํ˜„ ๋ฐ˜๋ณต๋œ <ํƒœ๊ทธ>๋กœ ํ‘œํ˜„ [] ๋ฐฐ์—ด ์‚ฌ์šฉ - ๊ธฐํ˜ธ๋กœ ๋ฐฐ์—ด ํ•ญ๋ชฉ ํ‘œํ˜„
์†์„ฑ(Attribute) <ํƒœ๊ทธ ์†์„ฑ="๊ฐ’"> ํ˜•ํƒœ๋กœ ํ‘œํ˜„ ์†์„ฑ ๊ฐœ๋… ์—†์Œ (ํ‚ค-๊ฐ’์œผ๋กœ๋งŒ ํ‘œํ˜„) ๋ณ„๋„์˜ ํ‚ค-๊ฐ’ ์Œ์œผ๋กœ ํ‘œํ˜„
์ฃผ์„ ์ง€์› <!-- ์ฃผ์„ ๋‚ด์šฉ --> โŒ (์ฃผ์„ ์ง€์› ์•ˆ ํ•จ) # ์ฃผ์„ ๋‚ด์šฉ
๋ฐ์ดํ„ฐ ํƒ€์ž… ๋ฌธ์ž์—ด ์ค‘์‹ฌ, ๋ณ„๋„ ํŒŒ์‹ฑ ํ•„์š” ๋ฌธ์ž์—ด, ์ˆซ์ž, ๋ถˆ๋ฆฌ์–ธ, ๋ฐฐ์—ด, ๊ฐ์ฒด ์ง€์› ์ž๋™ ํƒ€์ž… ๊ฐ์ง€ (์˜ˆ: 123์€ ์ˆซ์ž๋กœ ์ฒ˜๋ฆฌ)
๊ฐ€๋…์„ฑ ๊ธธ๊ณ  ๋ณต์žกํ•จ ๊ฐ„๊ฒฐํ•˜๊ณ  ์ง๊ด€์  ๋งค์šฐ ๊ฐ„๊ฒฐํ•˜๋ฉฐ ์‚ฌ๋žŒ ์นœํ™”์ 
ํ™•์žฅ์„ฑ ์Šคํ‚ค๋งˆ ๊ธฐ๋ฐ˜ ํ™•์žฅ์„ฑ ๋›ฐ์–ด๋‚จ ๋ฐ์ดํ„ฐ ๊ตํ™˜์— ์ตœ์ ํ™” ์„ค์ • ํŒŒ์ผ ๋ฐ DevOps์— ์ ํ•ฉ

๐Ÿ’ก ์ด ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์ด ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋Š” ์‹œ๋‚˜๋ฆฌ์˜ค

  • ์‚ฌ๋‚ด ํฌํ„ธ ์‹œ์Šคํ…œ: ๊ฐ ๋ถ€์„œ ๋ฐ ์ง์›์˜ ์ •๋ณด๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ํ”„๋กœ์ ํŠธ ํ˜„ํ™ฉ์„ ํ‘œ์‹œ.
  • HR ์‹œ์Šคํ…œ: ์ง์› ๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ์ž๊ฒฉ์ฆ ์ •๋ณด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์ธ์‚ฌ ๋ฐฐ์น˜ ๋ฐ ๊ต์œก ๊ณ„ํš.
  • ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ(PMS): ํ”„๋กœ์ ํŠธ ์ƒํƒœ, ์˜ˆ์‚ฐ, ๋งˆ๊ฐ์ผ ๋“ฑ์„ ์ถ”์ ํ•˜๋Š” ๋Œ€์‹œ๋ณด๋“œ ๊ตฌํ˜„.
  • API ๋ฐ์ดํ„ฐ ํ†ต์‹ : JSON ํ˜•์‹์„ ํ†ตํ•ด ์›น ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ.
  • DevOps ๊ตฌ์„ฑ ๊ด€๋ฆฌ: YAML์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐํฌ ํ™˜๊ฒฝ์˜ ํ”„๋กœ์ ํŠธ ์„ค์ • ํŒŒ์ผ ๊ตฌ์„ฑ.

๐ŸŽฏ ์š”์•ฝ

  • XML: ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ์—์„œ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ๊ณผ ์Šคํ‚ค๋งˆ ์ •์˜๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ ํ•ฉ (์˜ˆ: ๊ธˆ์œต, ์˜๋ฃŒ ์‹œ์Šคํ…œ).
  • JSON: ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ๋ชจ๋ฐ”์ผ ์•ฑ์˜ ๋ฐ์ดํ„ฐ ํ†ต์‹ ์—์„œ ํ‘œ์ค€ ํฌ๋งท.
  • YAML: ์„ค์ • ํŒŒ์ผ, DevOps, CI/CD ํŒŒ์ดํ”„๋ผ์ธ(Kubernetes, Docker Compose)์— ์ด์ƒ์ .