[G1-Sync] Manual knowledge update

This commit is contained in:
Antigravity Agent
2026-04-30 22:42:02 +09:00
parent 0bd4f19e38
commit c36c0644a1
4888 changed files with 18470 additions and 18602 deletions
@@ -1,10 +1,10 @@
---
id: P-REINFORCE-AUTO-25EFF5
id: [[P-Reinforce]]-AUTO-25EFF5
category: "10_Wiki/💡 Topics/Programming & Language"
confidence_score: 0.90
tags: [auto-reinforced]
last_reinforced: 2026-04-20
github_commit: "[P-Reinforce] Continuous Worker - 구조적 타이핑(Structural Typing)"
github_commit: "[P-Reinforce] Continuous Worker - 구조적 타이핑([[Structural Typing]])"
---
# [[구조적 타이핑(Structural Typing)]]
@@ -19,7 +19,7 @@ github_commit: "[P-Reinforce] Continuous Worker - 구조적 타이핑(Structural
* **명목적 타이핑(Nominal Typing)과의 차이:**
Java나 C#과 같은 전통적인 객체 지향 언어에서 사용하는 명목적 타이핑은 타입의 이름이나 명시적 상속/구현 선언이 일치해야만 호환성이 인정됩니다 [2, 7]. 반면, TypeScript는 객체의 구조(속성과 메서드의 형태)만 일치하면 동일한 타입 혹은 호환 가능한 타입으로 처리하는 유연성을 갖습니다 [2].
* **과잉 속성 체크(Excess Property Checking)를 통한 방어:**
* **과잉 속성 체크([[Excess Property Checking]])를 통한 방어:**
구조적 타이핑의 유연함은 오타(예: `color` 대신 `colour` 입력)를 내거나 의도치 않은 데이터를 전달하는 실수를 유발할 수 있습니다 [8, 9]. 이를 방지하기 위해 TypeScript는 객체 리터럴이 변수에 직접 할당되거나 함수의 인자로 전달될 때 예외적으로 엄격하게 동작하는 '과잉 속성 체크'를 발동시킵니다 [3, 10, 11]. 이를 통해 타겟 인터페이스에 정의되지 않은 잉여 속성이 포함되는 것을 컴파일 시점에 차단합니다 [3, 10].
* **구조적 타이핑의 한계와 브랜디드 타입(Branded Types):**