---
id: P-REINFORCE-AUTO-0228C6
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
confidence_score: 0.90
tags: [auto-reinforced]
last_reinforced: 2026-04-20
github_commit: "[P-Reinforce] Continuous Worker - 식별 가능한 유니온(Discriminated Unions)"
---

# [[식별 가능한 유니온(Discriminated Unions)]]

## 📌 한 줄 통찰 (The Karpathy Summary)
> 식별 가능한 유니온(Discriminated Unions, 태그된 유니온)은 여러 다른 형태의 데이터를 구별하기 위해 공통된 리터럴 타입 속성(판별자)을 사용하는 TypeScript 패턴이다 [1-3]. 이 패턴은 컴파일러가 각 조건 블록에서 타입을 자동으로 좁혀(Narrowing) 유효하지 않은 상태의 생성을 원천적으로 방지하고 타입 안정성을 보장할 수 있게 한다 [4, 5].

## 📖 구조화된 지식 (Synthesized Content)
본문 구조화 작업 중...

## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)
- **과거 데이터와의 충돌:** 자동화 엔진에 의해 매핑된 지식으로, 추후 정밀 검증 필요.
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.

## 🔗 지식 연결 (Graph)
- **Related Topics:** [[유니온 타입(Union Types)]], [[타입 좁히기(Type Narrowing)]], [[완전성 검사(Exhaustiveness Checking)]], [[never 타입]]
- **Projects/Contexts:** [[상태 머신(State Machine) 설계]], [[React 상태 관리 및 API 응답 처리]]
- **Contradictions/Notes:** 컴파일 시점의 정적 타이핑만 제공하므로 외부에서 유입되는 API 데이터나 설정 파일의 정합성을 보장하려면 런타임 검증 라이브러리(예: Zod)와 함께 사용하는 것이 권장된다 [18, 19]. 또한, 복잡한 분기 처리를 돕기 위해 `ts-pattern`과 같은 외부 라이브러리를 도입할 수 있으나, 이는 기존의 switch나 if/else 문에 기반한 식별 가능한 유니온보다 연산 성능이 떨어질 수 있으므로 성능과 가독성 사이의 트레이드오프를 고려해야 한다 [11, 20, 21].

---
*Last updated: 2026-04-18*
- Raw Source: [[00_Raw/2026-04-20/식별 가능한 유니온(Discriminated Unions).md]]
---
