c# veri tipleri

C# Veri Tipleri ve Değişken Tanımlama

Bu yazıda veri tipinin ne demek olduğunu, değişkenin ne demek olduğunu ve C# programlama dilinde kullanılan veri tiplerini inceleyeceğiz.

Bu bahsettiğimiz kavramlara girmeden önce verinin ne olduğunu ve bir bilgisayar programının temel işlevlerini gözden geçirmemizde fayda var.

Veri ve Bilgi

Veri dendiğinde işlenmemiş, saf bir dijital “kütle” yi düşünmeliyiz. Bilgiyi veriden ayıran ise, bilginin anlamlı bir bütün oluşturmasıdır. Bilgiyi işlenmiş veri olarak tanımlamak mümkün.

Bir cep telefonu numarası tek başına bir veridir. Fakat bunun bir telefon numarası olduğunu bilmediğimizi varsayarsak, bu aynı zamanda bir parola veya farklı birşeyi temsil eden metin de olabilir.

Bunun bir cep telefonu numarası olduğunu öğrendiğimizde bu veri bir bilgiye dönüşür. Artık bu verinin neyi temsil ettiğini biliyoruz. Bu ifadenin aranacak bir telefon numarası olduğu gerçeğini farkettiğimiz an bu artık bir bilgidir diyoruz.

Programlamada veriler nasıl kullanılır?

Bir bilgisayar programının temelde yaptığı iş; bir takım verileri belli işlemlere tabii tutarak bu verilerin kullanıcılara sunulmasıdır. Günümüzde en popüler uygulamalara dahi baktığımızda tümünün elde edilen verileri işleyerek kullanıcılara göze hoş görünen bir şekilde sunma normu üzerine bina edildiğini göreceğiz.

Kuvvetle muhtemel daha önce duyduğunuz bir bilgiyi paylaşacağım: Bilgisayar işlemcilerinin tanıdığı tek veri tipi binary

Peki bu ne demek?

Bilgisayar işlemcileri tüm hesaplamalarını LOW ve HIGH sinyali üzerinden yaparlar. Örneğin: En basit bir toplama işleminde dahi, toplama işleminde kullanılan sayılar tam toplayıcı devreler sayesinde işlemcilerde hesaplanır. Full adder devrelerin toplama işlemini yapabilmesi için sayılara binary formatında ihtiyacı var.

Neyse ki biz bu kadar ayrıntıyı düşünmek zorunda değiliz.

Bilgisayar programlarının geliştirilme sürecini kolaylaştırmak için gelişen teknolojiyle birlikte modern programlama dilleri gelliştirilmiştir. Gelişen teknoloji sayesinde bilgisayar programı geliştirme süreçleri giderek kolaylaşmıştır. Modern programlama dillerinde yüksek bitli sayısal değerler, metinler için veri tipleri, ve hatta gerçek hayatta temsil edilen tipler için veri tipleri oluşturmak mümkün.

Bu yazıda C# dilinde en sık kullanılan veri tiplerini ve değişken tanımlamayı inceleyeceğiz.

C# Veri Tipleri

C# dilinde programlama yaparken kullanılan veri tipi çok fazla olmasına rağmen bu yazıda en çok kullanılan veri tiplerini sınıflandırarak inceleyeceğiz.

c# veri tipleri

Veri tiplerini incelerken yapılması gereken en temel sınıflandırma Değer ve Referans tipleridir.

C# Değer Tipleri

Doğrudan değer atayabildiğimiz veri tiplerine değer tipleri diyoruz. Bunlara örnek olarak int, char, double, float verilebilir. Bunlar doğrudan sayısal değer veya karakter taşırlar. Bir değer tipli değişken tanımladığınızda sistem otomatik olarak bu değişken için gerekli olan alanı bellekte ayıracaktır. (Allocate).

Aşağıda C# değer tiplerinin listesini görüyoruz.

Tip Değer tipi Aralık Başlangıç Değeri
bool True veya false. True veya False False
byte 8 bit (unsigned) 0 – 255 0
char 16 bit ‘\0’
decimal 128 bit ondalıklı (-7.9 x 1028 – 7.9 x 1028) / 100 – 28 0.0M
double 64-bit akan sayı (+/-)5.0 x 10-324 – (+/-)1.7 x 10308 0.0D
float 32-bit akan sayı -3.4 x 1038 – + 3.4 x 1038 0.0F
int 32-bit işaretli tamsayı -2,147,483,648 – 2,147,483,647 0
long 64-bit işaretli tamsayı -9,223,372,036,854,775,808 – 9,223,372,036,854,775,807 0L
sbyte 8-bit işaretli tamsayı -128 – 127 0
short 16-bit işaretli tamsayı -32,768 – 32,767 0
uint 32-bit işaretsiz tamsayı (+) 0 – 4,294,967,295 0
ulong 64-bit işaretsiz tamsayı (+) 0 – 18,446,744,073,709,551,615 0
ushort 16-bit işaretsiz tamsayı (+) 0 – 65,535 0

C# Değer Tiplerinin nasıl tanımlandığı ile örnekler aşağıda verilmiştir.

using System;

public void Sample() 
{
   int a = 544;
   double b = 44.5;
   bool isAssigned = true;
   byte c = 200;
}

 

C# Referans Tipleri

Referans tipleri doğrudan değeri taşımak yerine bu verilerin referanslarını barındırırlar. Bir diğer deyişle, bu verilerin bellek üzerindeki konumlarını taşırlar. Eğer referans tipinin bellekte gösterdiği yerdeki veri değişirse, bu değişim herhangi bir işlem gerektirmeden değişkene etki eder.

Birkaç referans tip örneği: dynamic, object, string.

Object: C#’ta tüm veri tiplerinin türediği sınıftır. object anahtar kelimesi, System.Object sınıfının bir takma adıdır.

using System;

public void SampleMethod() 
{
    Object o1 = new Object();
    o1 = 100;

    object o2;
    o2 = 100;

    object o3;
    o3 = "merhaba";
}

Görüldüğü üzere object tipindeki bir değişken herhangi bir değeri alabilir.

String: String tipindeki veriye herhangi bir metni atayabiliriz. String veri tipi herhangi bir karakter sınırı yoktur. Devasa boyutlardaki metinleri dahi taşıyabilir. C# dilinde herhangi bir metin ifadesi için kullanılabilecek yegane veri tipi string.

using System;

public void Ornek() 
{
   string str1 = "Merhaba";
   string str2 = "Dünya";
}

String tipindeki değişken tanımlarken kullanılan string anahtar kelimesi System.String sınıfının bir takma adıdır.

Son Notlar

Değişken tanımlama işlemi sizin için basit bir iş gibi gözükebilir. Fakat büyüyen projelerde kullanılacak değişken tiplerinin yanı sıra, değişkenlerde kullandığınız isimler bile önem kazanacaktır.

Değişkenin hizmet edeceği amaca uygun aralıkta tipte olması bir yana, şahsi olarak ingilizce isimli değişkenler tanımlamanızı öneriyorum. İngilizce isimli değişkenler tanımlamak ortak çalışılan projelerde takım arkadaşlarınızla birlikte daha uyumlu bir şekilde çalışmanızı kolaylaştıracak bir alışkanlıktır.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir