Static-type-checking은 프로그래밍 언어에서 컴파일 타임에 변수나 표현식의 데이터 타입을 확인하는 과정을 의미하는 명사입니다. 프로그램이 실제로 실행되기 전에 소스 코드 단계에서 타입 오류를 미리 잡아내기 때문에, 런타임에 발생할 수 있는 예기치 않은 오류를 방지하고 코드의 안정성을 높이는 데 매우 중요한 역할을 합니다. 주로 Java, C++, TypeScript와 같은 정적 타입 언어에서 사용되며, 실행 중에 타입을 결정하는 동적 타입 검사(Dynamic type checking)와 대비되는 개념입니다. 개발자들은 이 과정을 통해 코드의 가독성을 높이고 리팩토링을 더 안전하게 수행할 수 있습니다. 기술적인 문맥에서 주로 사용되는 전문 용어이며, 프로그래밍 언어의 설계 철학을 논할 때 필수적으로 등장하는 개념입니다. 정적 타입 검사를 지원하는 언어는 컴파일러가 타입 정보를 엄격하게 관리하므로, 개발자가 의도하지 않은 타입의 데이터를 대입하려 할 때 즉시 경고나 에러를 발생시켜 개발 생산성을 향상시킵니다.