Static typing은 프로그래밍 언어의 한 특징으로, 변수나 함수의 타입(자료형)이 컴파일 시점에 미리 결정되고 고정되는 방식을 의미합니다. 즉, 코드가 실행되기 전에 타입 오류를 잡아낼 수 있다는 장점이 있습니다. 한국어로는 '정적 타입 지정' 또는 '정적 타입 시스템'이라고 번역됩니다. 이 방식은 코드가 실행될 때 예상치 못한 타입 오류로 인해 프로그램이 멈추는 것을 방지하여 안정성을 높여줍니다. 반대되는 개념은 런타임에 타입이 결정되는 '동적 타입 지정(dynamic typing)'입니다. 예를 들어, Java나 C++ 같은 언어들은 대표적인 정적 타입 언어이며, 변수를 선언할 때 반드시 어떤 종류의 데이터(숫자, 문자열 등)를 담을지 명시해야 합니다. 이는 코드를 작성할 때 더 많은 규칙을 따라야 하지만, 대규모 프로젝트에서 유지보수성과 성능 면에서 유리할 수 있습니다.