Static typing destekleyen dillerde, bir değişkenin tipi derleme zamanında (compile-time) bilinir ve çalışma zamanında (runtime) değişkenin tipi değiştirilemez. Eğer kodu yazarken oluşturduğumuz değişkenin tipine uygun olmayan bir değer ataması yapılırsa derleme zamanında hata alırız. Günümüzde kodu yazarken kullandığımız akıllı IDE’ler sayesinde bu tip hataları derleme yapmaya gerek kalmadan farkedebiliriz.
Örneğin yukarıda Rider IDE’ sini kullanarak yazmış olduğum basit bir c# kodu örneği bulunuyor. Örnekte int tipinde ve age isminde bir değişken oluşturdum ve 25 değerini bu değişkene atadım. Daha sonra bir alt satırda aynı değişkene Serhat ataması yaptım. Bu atama sonrasında IDE burada Serhat değerinin altını çizerek hata döndürdü ve bu atamanın yapılamayacağı hakkında bilgi verdi.
Rider build failed
Ayrıca Rider üzerinden build işlemi yapmak istediğim zaman derleme aşamasında hata oluştu ve yine aynı hatayı bana bildirdi.
Terminal build failed
Aynı hatayı terminal üzerinden dotnet build komutunu çalıştırdığımızda da görebiliriz.
C# dışında static typing destekleyen bazı diller; C, C++, Java, Rust, Go, Scala, Kotlin, Swift
Kısaca özetleyecek olursak; static typing dillerde derleme zamanında tip kontrolü yapılır. Böylelikle çalışma zamanında oluşabilecek hataların önüne geçilir.