Ana içeriğe geç

Veri türü

İngilizcesi
Data Type
Türkçe karşılığı
veri tipi
Okunuşu
deyta tayp
Güncellendi 2 dk okuma

Bu sayfayı paylaşın

Bağlantıyı gönderin, tanımı bağlantısıyla birlikte alıntılayın ya da kendi sitenizde bir kart olarak gösterin.

https://softwaredictionary.org/tr/terimler/data-type

Kısaca

Veri türü, bir programa bir verinin sayı ya da metin gibi hangi tür bir değer taşıdığını ve hangi işlemlerin ona uygulanabileceğini söyleyen sınıflandırmadır.

Veri türü nedir?

Veri türü, bir şeyin ne tür bir değer olduğunu ve onun için hangi işlemlerin anlamlı olduğunu tanımlar. İki sayıyı toplayabilir ya da iki metni birleştirebilirsiniz, ancak bir tarihi bir cümleyle çarpmanın anlamı yoktur. Bir programdaki her değerin (bir değişkende saklansa, bir fonksiyona aktarılsa ya da ondan döndürülse de) bir veri türü vardır.

Çoğu dil, tamsayılar, kayan noktalı sayılar (ondalıklı sayılar), dizeler (metin) ve boolean'lar (true veya false) gibi küçük bir yerleşik ilkel (primitive) tür kümesi sunar. Bunların üzerine, diziler (array), nesneler ve sınıflar gibi birkaç değeri bir arada gruplayan bileşik türler sağlar. JavaScript'te typeof operatörü, bir değerin türünü program çalışırken gösterir: typeof 42 sonucunda "number", typeof "hi" sonucunda "string" döner.

Veri türleri elektrik fişleri ile prizlerinin biçimleri gibi çalışır: bir fiş yalnızca kendisi için tasarlanmış prize uyar ve birbirine ait olmayan şeylerin bağlanmasını engeller. Diller türleri ne zaman denetlediği konusunda farklılık gösterir. Java, C#, Rust ve TypeScript gibi statik türlü diller türleri program çalışmadan önce denetler; JavaScript ve Python gibi dinamik türlü diller ise program çalışırken denetler.

Statik ile dinamik türleme sıklıkla güçlü ile zayıf türlemeyle karıştırılır. Statik ve dinamik türlerin ne zaman denetlendiğini, güçlü ve zayıf ise bir dilin türlerin otomatik olarak karıştırılmasını ne kadar katı biçimde reddettiğini anlatır. JavaScript dinamik ve oldukça zayıf türlüdür; bu yüzden "5" + 1 sessizce "51" üretir. Python ise dinamik ama güçlü türlüdür ve aynı işlem için TypeError verir.

Önemli noktalar

  • Veri türü, verinin ne tür bir değer taşıdığını ve üzerinde hangi işlemlere izin verildiğini tanımlar.
  • Yaygın ilkel türler tamsayılar, kayan noktalı sayılar, dizeler ve boolean'lardır.
  • Dizi ve nesne gibi bileşik türler birkaç değeri bir arada gruplar.
  • Statik türleme türleri program çalışmadan önce, dinamik türleme ise çalışırken denetler.

Örnek

TypeScript'te ilkel ve bileşik türlertypescript
// Primitive types
const age: number = 30;
const userName: string = "Ada";
const isAdmin: boolean = false;

// A composite type built from primitives
type User = { name: string; age: number; isAdmin: boolean };
const user: User = { name: userName, age, isAdmin };

console.log(typeof age); // "number" (checked while the program runs)
console.log("5" + 1);    // "51": the number is converted to text

// const total: number = "10"; // Error: Type 'string' is not assignable to type 'number'

Sık sorulan sorular

İlkel veri türleri (primitive types) nedir?

İlkel veri türleri, bir dilin sunduğu ve başka değerlerden oluşmayan sayı, dize ve boolean gibi en basit yerleşik türlerdir. JavaScript'te yedi tane vardır: string, number, bigint, boolean, undefined, symbol ve null.

Statik ve dinamik türleme arasındaki fark nedir?

Statik türlü bir dilde türler program çalışmadan önce, genellikle bir derleyici tarafından denetlenir; bu yüzden birçok hata erken yakalanır. Dinamik türlü bir dilde türler program çalışırken denetlenir; bu daha esnektir ancak tür hatalarının o kod gerçekten çalışana dek gözden kaçmasına izin verir.

0.1 + 0.2 neden 0.3'e eşit değildir?

Çoğu dil ondalıklı sayıları, 0.1 gibi bazı kesirleri tam olarak gösteremeyen ikili kayan noktalı değerler olarak saklar. Küçük yuvarlama hataları birikir ve 0.1 + 0.2 sonucu 0.30000000000000004 olur; para için kuruş gibi tamsayılar ya da özel bir ondalık türü kullanın.

İlgili sayfalar

Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin

Daha fazla

Ayarlar