처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈

프로그래밍에서 '구조적 타이핑(Structural Typing)'과 '명목적 타이핑(Nominal Typing)'의 차이점은?

어려움 freeCodeCamp
보기 및 정답
A 구조적 타이핑은 타입의 내부 구조가 같으면 호환되고, 명목적 타이핑은 명시적 선언(이름)이 같아야 호환된다
B 구조적 타이핑은 컴파일 언어에서만 사용되며, 인터프리터 언어에서는 명목적 타이핑만 가능하다
C 구조적 타이핑은 컴파일 시점에 타입을 결정하는 정적 타이핑이고, 명목적 타이핑은 런타임에 타입을 결정하는 동적 타이핑이다
D 구조적 타이핑과 명목적 타이핑은 용어만 다를 뿐 타입 호환성 검사 방식에 실질적인 차이가 없다

해설

구조적 타이핑(TypeScript, Go)은 두 타입이 같은 속성과 메서드를 가지면 별도의 상속 없이 호환됩니다. 명목적 타이핑(Java, C#)은 클래스 이름이나 명시적 관계(extends)가 같아야 호환됩니다. 덕 타이핑(Python)은 구조적 타이핑의 동적 버전으로 볼 수 있습니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기