C# Dilinde Veri Türleri
Bu dersimizde C# daki veri türlerini göreceğiz. Her dilde olduğu gibi C# da da önceden tanımlanmış ve dillerin temelini oluşturan veri türleri bulunmaktadır. Temel veri türleri ikiye ayrılır; önceden tanımlanmış veri türleri ve kullanıcının tanımladığı veri türleri. Önceden tanımlanmış veri türleri de kendi içinde ikiye ayrılır; referans tipi ve değer tipi olmak üzere. Öncelikle veri tipleri nasıl tanımlanır, ilk değerleri nasıl verilir ve veri türlerinin faaliyet alanları nelerdir gibi sorulara cevaplar verelim.
DEĞİŞKENLER
Değişkenler, içerisinde farklı türde veriler saklayabildiğimiz bellekteki gözeneklerin programdaki karşılığıdır. Bütün programlama dillerinde var olan değişkenler kullanılmaya başlanmadan önce tanımlanırlar. Bu işleme tanımlama denmektedir. Derleyici bir nesne tanımlaması gördüğünde microişlemci üzerinde hemen değişken için bir yer ayırır. Değişkenler microişlemci üzerinde farklı bölgelerde tutulmaktadır. Temel olarak bilmemiz gereken 2 bölge vardır.
1. Stack Bölgesi
Tanımladığımız değişkenlerin (Örneğin bir tam sayı) tanımladığı andan itibaren değerinin tutulduğu bölgedir. RAM'ın yapısını incelediğinizde stack bölgesini görürsünüz. Ram da tutulan bu veriye Stack Pointer ile erişebilirsiniz. Stack pointer o anda stack bölgesinde oluşan değişkenin değerini size direkt olarak verebilir.(daha detaylı bilgileride alabilirsiniz)
2. Heap Bölgesi
Heap bölge si de stack bölgesi gibi RAM da bulunan bir bölgedir. Bütün C# nesneleri bu bölgede oluşur. Bir nesneyi heap bölgesinde oluşturmak için NEW anahtar sözcüğü kullanılmak zorundadır. Heap bölgesinde oluşturulan verilerin stack bölgesine göre oluşturulması daha yavaştır. Tabi ufak boyutlu programlarda bunu hissedemesek de daha büyük boyutlarda bu yavaşlama hissedilebilir. Fakat heap bölgesinin kullanımı stack bölgesinin kullanımından daha esnektir ve programcıya kolaylık sağlamaktadır.
DEĞİŞKEN TANIMLAMA
C# dilinde temel olarak nesne tanımlama <veri türü> <ismi> ; şeklinde olmaktadır.
Örneğin int a; dediğimizde
pozitif ve negatif değerleri kapsayan 32 bitlik bir tamsayı olan "a" isimli bir değişken tanımlanır.
C# da değişkenler tanımlanırken değerleri verilebilir yada boş bırakılabilir.
int a; a = 10 ; ya da int a = 10 ; şeklinde olabilr.
Aynı veri tipinde değişkenler ardı sıra tanımlanabilir.
int a,b,c; ya da int a= 10 , b = 5, c = 7 ya da int a=10, b,c ;
şeklinde tanımlamalar yapılabilir. Fakat farklı türlerde değişkenler tanımlamak için farklı satırlar kullanılmalıdır.
DEĞİŞKENLERİN FAALİYET ALANLARI
C# da programlar blok lar içerisine yazılır. Bu bloklar da açılıp kapanan parantezler arası ile belirlidir. Tanımlanan bir değişkenin faaliyet alanı tanımlandığı bloklar arasındadır. Farklı kodlamalar ile blok aralıkları genişletilebilir. Şimdi faaliyet alanları ve kısıtlamalarının maddeler halinde görelim.
Döngüler içerisinde değişken kullanımı ile ilgili hazırlamış olduğum karikatürü buradan görebilirsiniz.
DEĞİŞKENLER
Değişkenler, içerisinde farklı türde veriler saklayabildiğimiz bellekteki gözeneklerin programdaki karşılığıdır. Bütün programlama dillerinde var olan değişkenler kullanılmaya başlanmadan önce tanımlanırlar. Bu işleme tanımlama denmektedir. Derleyici bir nesne tanımlaması gördüğünde microişlemci üzerinde hemen değişken için bir yer ayırır. Değişkenler microişlemci üzerinde farklı bölgelerde tutulmaktadır. Temel olarak bilmemiz gereken 2 bölge vardır.
1. Stack Bölgesi
Tanımladığımız değişkenlerin (Örneğin bir tam sayı) tanımladığı andan itibaren değerinin tutulduğu bölgedir. RAM'ın yapısını incelediğinizde stack bölgesini görürsünüz. Ram da tutulan bu veriye Stack Pointer ile erişebilirsiniz. Stack pointer o anda stack bölgesinde oluşan değişkenin değerini size direkt olarak verebilir.(daha detaylı bilgileride alabilirsiniz)
2. Heap Bölgesi
Heap bölge si de stack bölgesi gibi RAM da bulunan bir bölgedir. Bütün C# nesneleri bu bölgede oluşur. Bir nesneyi heap bölgesinde oluşturmak için NEW anahtar sözcüğü kullanılmak zorundadır. Heap bölgesinde oluşturulan verilerin stack bölgesine göre oluşturulması daha yavaştır. Tabi ufak boyutlu programlarda bunu hissedemesek de daha büyük boyutlarda bu yavaşlama hissedilebilir. Fakat heap bölgesinin kullanımı stack bölgesinin kullanımından daha esnektir ve programcıya kolaylık sağlamaktadır.
DEĞİŞKEN TANIMLAMA
C# dilinde temel olarak nesne tanımlama <veri türü> <ismi> ; şeklinde olmaktadır.
Örneğin int a; dediğimizde
pozitif ve negatif değerleri kapsayan 32 bitlik bir tamsayı olan "a" isimli bir değişken tanımlanır.
C# da değişkenler tanımlanırken değerleri verilebilir yada boş bırakılabilir.
int a; a = 10 ; ya da int a = 10 ; şeklinde olabilr.
Aynı veri tipinde değişkenler ardı sıra tanımlanabilir.
int a,b,c; ya da int a= 10 , b = 5, c = 7 ya da int a=10, b,c ;
şeklinde tanımlamalar yapılabilir. Fakat farklı türlerde değişkenler tanımlamak için farklı satırlar kullanılmalıdır.
DEĞİŞKENLERİN FAALİYET ALANLARI
C# da programlar blok lar içerisine yazılır. Bu bloklar da açılıp kapanan parantezler arası ile belirlidir. Tanımlanan bir değişkenin faaliyet alanı tanımlandığı bloklar arasındadır. Farklı kodlamalar ile blok aralıkları genişletilebilir. Şimdi faaliyet alanları ve kısıtlamalarının maddeler halinde görelim.
- Bir sınıf içerisinde tanımlanan değişken sınıf içerisinde her zaman faaliyettedir.
- Yerel (private) bir değişken sadece tanımlandığı blok arasında faaliyettedir.
- Döngüler içerisinde tanımlanan değişkenler döngü dışına çıkmadığı sürece faaliyette olacaktır.
Döngüler içerisinde değişken kullanımı ile ilgili hazırlamış olduğum karikatürü buradan görebilirsiniz.