C# programlama dili serimize C# Veri Tipleri yazımız ile devam ediyoruz. C# Veri Tipleri giriş seviyesinde çok önemli dataylar içermektedir. Bellek optimizasyonları için çok önemli olan bu konuya başlıyoruz.
Bu yazı da C#’daki temel veri tipleri, değişken tanımı, değişken tanımlama ve bu işlemler sırasında dikkat edilmesi gerekenler anlatılacaktır.
Değişken, programın çalışması için gerekli verilerin tanımlanarak, bellek üzerinde tutulduğu bölgelere verilen isimlerdir. C# programlama dilinde programda kullanılacak değişkenler önceden tanımlanmalıdırlar. Bu bir anlam da bellek bölgesinde tutulacak verinin türünün belirlenmesidir. Değişken tanımlandıktan sonra değeri değiştirilebilir ancak veri tipinin aynı olması gereklidir. Yani bir sayı değişkenine bir harf atanmamalıdır. C# programlama dilinde değişken “veritipi değişkenadi;” şeklinde tanımlanmaktadır. Değişken değeri tanımlanma sırasında verilebildiği gibi tanımlandıktan sonra da verilebilir.
Değişkenlere isim verirken belirlenen kurallara dikkat edilmesi gerekmektedir. Bu kuralları maddeler halinde sıralayacak olursak;
*Değişkenlere isim verirken büyük harf, küçük harf, sayı ve ‘_’ karakteri kullanılabilir.
*Değişken isimlerinde boşluk karakteri kullanılamaz.
*C# değişken isimlerinde büyük harf-küçük harf duyarlıdır. Yani int DEGİSKEN; ve int degisken; aynı şey değillerdir, aynı değişkeni göstermezler.
*Zorunluluk olmamasına karşın C#’da değişken isimlerin de Türkçe karakter kullanmamaya özen gösterilmesi gerekmektedir.
*Değişken isimlerinde !,%,:.; $ gibi özel karakterler bulunamaz.
*Değişken isimlerinde C# dilinde kullanılan özel kelimeler kullanılamaz. Bu şu anlama geliyor, C#’da if, else, continue, break gibi değişkenler oluşturulamamaktadır.
*Değişken isimlerinde kesin bir kural olmamasına karşı değişkenlerde küçük harf kullanılması önerilmektedir. Birden fazla sözcük içeren değişken isimlerinde ilk sözcüğün baş harfi küçük, ikincisinin baş harfi büyük yazılması daha çok tercih edilmektedir. Örneğin; maasGunu, bellekMiktari gibi. Bu tanımlama şekli Camel Sensitive yada Camel Case olarak adlandırılmaktadır.
C# programlama dilinde veri tipleri değer ve referans tipler olmak üzere ikiye ayrılır. Değer tipleri belleğin stack alanında saklanırken referans tipleri heap alanında saklanmaktadır. Değer tiplerinde tutulan verilere direk ulaşılabilirken, heap bölgesinde ise verilere ulaşmak için verinin adres bilgisini içeren bir referans tutulur ve veriye dolaylı bir erişim sağlanır.
Veri Tipleri Tablosu
Tür | Adı | Boyut | Tanımı | En üst ve En alt değerleri |
Değer Tipleri | sbyte | 1 Byte | işaretli tamsayı | -128 ile 127 |
short | 2 Byte | işaretli tamsayı | -32.768 ile 32.767 | |
int | 4 Byte | işaretli tamsayı | -2.147.483.648 ile 2.147.483.647 | |
long | 8 Byte | işaretli tamsayı | -9.223.372.036.854.775.808 ile9.223.372.036.854.775.807 | |
byte | 1 Byte | işaretsiz tamsayı | 0 ile 255 | |
ushort | 2 Byte | işaretsiz tamsayı | 0 ile 65.535 | |
uint | 4 Byte | işaretsiz tamsayı | 0 ile 4.294.967.295 | |
ulong | 8 Byte | işaretsiz tamsayı | 0 ile 18.446.744.073.709.551.615 | |
float | 4 Byte | tek kayan sayı | +yada – 1,5*10-45 : + ya da – 3,4*1038 | |
double | 8 Byte | çift kayan sayı | +yada – 5*10-324 : + ya da – 1,7*10308 | |
decimal | 16 Byte | ondalıklı sayı | +yada – 1,5*10-28 : + ya da – 7,9*1028 | |
bool | ——- | —— | true ya da false | |
char | 2 Byte | Unicode karakterler | U + u + ffff 0000 | |
Referans Tipleri | string | Değişken | Karakter Katarı | ——- |
Object | Bütün veri tiplerinin türediği temel sınıf |
Tüm değişken tiplerinin tanımlanması
Yazının başlangıcın da değişkenin değeri değiştirilirken aynı tipten bir değerin atanması gerektiğinden bahsetmiştik. Bazı durumda bu veri tipleri arasında dönüşüm yapmamız gerekebilir. Örneğin elimizde string yani metin tipinde “123” değeri bulunmaktadır. Bizim bu metin değerini bir sayı veri tipinde değişkene atayıp işlem yapmamız mümkündür. C# kütüphanelerinde tip dönüşümleri için çeşitli fonksiyonlar bulunmaktadır. Tip dönüşümlerinin ayrıntıları ve performans değerlendirmelerine C# : 3 -Tip Dönüşümleri ve Tip Dönüşümlerinde Performans Analizi makalesinde ayrıntılı değinilmiştir.
Dikkat edilme oranı çok az olsa da oluşturacağımız değişkenin veri tipini çok iyi seçmeliyiz. Sadece işin tamamlanması değil yazılımın performanslı olması ve bellekte olabildiğince az yer kaplaması gerekmektedir. Bir sayı değişkeni oluşturulması gerekli ve atanabilecek değerler 255’ten küçük ise 8 bayt yer kaplayan long veya 4 bayt kaplayan int veri tiplerine yerine 1 bayt yer kaplayan byte işaretsiz tamsayı değeri kullanılmalıdır. byte veri tipi kullanılması gereken yerde long veri tipi veya int veri tipi kullanmak bize 3 ila 7 bayt kayıp ettirecektir. Bu nedenle değişkenin kullanım amacı analiz edilip bu amaca uygun veri tipleri seçilmesi bellek açısından çok önemlidir. Veri tipi seçiminde performans analizi konusuna [Yazı Adı] makalesini inceleyerek ulaşabilirsiniz.
Ayrıca Visual Basic dilinde olan örnekleri görmek isterseniz bu link üzerinden ulaşabilirsiniz.
Bir yanıt bırakın