“Kavramlar: Değişken ve Tip”

Değişken konusuna daha fazla girelim. Değişken ne demek? Şimdi size bilinen şekilde hafızada bir heap bölgesi bir stack bölgesi şeklinde bilgiyi aktarıyor olsam aklınız karışırdı. (Biliyorsunuz bu yazılar konu hakkında hiçbir bilgisi olmayan kişiler için hazırlanıyor) bilinmeyen bir kavramı yine bilinmeyen başka kavramlarla anlatmak istemiyorum. Onun yerine şöyle bir yöntem izlemeyi deneyeceğim.

Diyelim ki siz bir toplama işlemi yapacaksınız. Hatta neyle neyi de toplayacağınız şimdiden belli olsun. 2 ve 3’ü toplayıp 5 elde edeceksiniz. Bunu bildiğimiz bir masa üstü hesap makinesi ile yaptığımızı düşünelim. Adımlar şunlar olacaktır:

· 2 rakamına basıp ekrana 2 yaz
· Toplama yaptırmak için + ya bas
· 3 rakamını girmek için 3’e bas
· Sonucu görmek için = bas
· Ve ekranda 5 yazar

İlk girdiğimiz 2’yi hesap makinesi nasıl hatırlıyor? Ya da bu işlemin toplama işlemi olduğunu nasıl hatırlıyor? Demek ki bu sizin bastığınız bu tuşlar makine tarafından hatırlanıyor.

Aynı hesap makinesi ile bir işlem daha yapmak istediğinizde bu rakamlar tekrar hatırlanıyor mu? Hayır. Demek ki geçici olarak hafızasında makine bazı bilgileri tutuyor.

İşte bu belirli süre hafızasında tuttuğu bu bilgiler değişken olarak adlandırılır.

Bu işlemi makine aklında şu şekilde gerçekleştiriyor:

· Kullanıcı bir veri girdi: X=2
· Kullanıcı işlem girdi: işlem: toplama
· Kullanıcı ikinci veriyi girdi: Y=3
· Kullanıcı sonuçlandır tuşuna bastı: Z=X+Y=5

Eğer kullanıcı yeni bir işlem yapmak isterse de şu şekilde devam edecek:
· Kullanıcı yeni bir veri girdi X için yeni değer ataması: X=6
· Kullanıcı yeni bir işlem girdi: işlem:çarpma
· Kullanıcı yeni bir ikinci veri girdi Y=6
· Kullanıcı sonuçlandır tuşuna bastı: Z=36

Fark ettiyseniz burada işlem, X, Y ve Z isimleri değişmiyor ama bunlara atanan değerler değişiyor. İşte bu neden değişken olduğunu söylüyoruz.

Tip kavramı
Bir yazılımdan söz ettiğimizde ise rakamların yanı sıra kelimelerden, doğru yanlışlardan, tam sayılardan, tam sayı olmayan ifadelerden de bahsederiz. Örneğin elma ile armudun toplamasından bahsedemeyiz ama “Ali”, “Ahmet” “Ayşe” isimli bir kişilerin çeşitli meyveler yemesinden bahsedebiliriz. Şöyle gösterelim

· X, Y yiyor. (Ayşe elma yiyor. Ahmet muz yiyor. Ali armut yiyor)

Yani X’in farklı isimler aldığı ve Y’nin farklı meyve isimleri aldıkları değişkenler durumu.

Peki kimin toplanıp, kimin toplanmayacağını ya da işlem yapılırken neye göre yapılacağını bize ne söyleyecek?

Bunu bize söyleyecek olan “Tip” kavramıdır. Yani değişkenin alabileceği değerin nasıl olacağını, o değişkenle neler yapılabileceğini bize söyler.

Sistemde hem tanımlı tipler olduğu gibi biz de kendi tipimizi yaratabiliriz. Kendi tipini yaratma konusu ileri bir konu olduğu için daha sonra değineceğim.

Sistemde tanımlı tipler ve aldıkları değerlerin aralıkları ise:

Veri Tipi
Değer Aralığı
Örnek
int
-2.147.483.648 ‘den 2.147.483.647
5
byte
0’dan 255
127
decimal
±1,0×10-28 ile  ±7,9×1028
10.896,3654
string
Karakter
“merhaba”
char
Tek karakter
“a”
bool
Mantıksal ifade, doğru ya da yanlış
true

Bir değişken kullanacağınızı kod içinde yazdığınızda C# mutlaka onun tipini belirtmenizi de ister. Sadece bununla da kalmaz aynı zamanda ilk değeri de atamanızı zorunlu tutar. Yani şöyle bir kod yazamaz, hata alırsınız.

int a, b,c;
a=b+c;

Değişkenlerin Kategorileri
(Bu bölüm şu adresten Türkçeye çeviridir: http://msdn.microsoft.com/en-us/library/aa691161%28v=VS.71%29.aspx )

C#’da 7 adet değişken kategorisi bulunmaktadır. Statik değişkenler, durum değişkenleri, dizi elementleri, değer parametreleri, referans parametreleri, çıktı parametreleri ve yerel değişkenler. Bunu bir örnekle açıklarsak:

class A
{
public static int x;
int y;
void F(int[] v, int a, ref int b, out int c) {
int i = 1;
c = a + b++;
}
}

Burada x statik değişken, y durum değişkeni, v[0] dizi elementi, a değer parametresi, b referans parametresi, c çıktı parametresi ve i de yerel değişkendir.

Bir Yanıt to ““Kavramlar: Değişken ve Tip””

  1. Güzel yazı olmuş ancak bi Ruby’e bak derim. Değişken kavramı orada yok kafa rahat (:

Yorum Yaz

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: