동적 타입 언어와 정적 타입 언어

프로그래밍 언어는 변수의 타입을 언제 결정하는지에 따라 동적 타입 언어와 정적 타입 언어로 나뉩니다.

핵심 특징

예시

// JavaScript(동적 타입) — 재할당 시 타입이 자유롭게 바뀜
let value = 10;
value = "Hello";
// TypeScript(정적 타입) — 선언된 타입과 다른 값을 할당하면 컴파일 오류
let value: number = 10;
value = "Hello"; // ⚠️ 컴파일 오류 발생

비교

항목동적 타입 언어정적 타입 언어
타입 결정 시점런타임컴파일 타임
타입 선언불필요필요
타입 오류 발견 시점실행 중코드 작성/컴파일 단계
개발 유연성높음상대적으로 낮음
안정성·가독성상대적으로 낮음높음
대표 언어JavaScript, Python, RubyJava, C, 타입스크립트

선택 기준

핵심 정리

동적 타입 언어는 런타임에, 정적 타입 언어는 컴파일 타임에 타입이 결정됩니다.

정답은 없으며 프로젝트 성격과 팀의 선호도에 따라 선택하는 문제입니다.

→ 동적 타입 언어와 정적 타입 언어에 대해 설명해주세요

CSLOG에서 보기