C# Class'lar ile Çalışmak

Ağustos 10, 2016 Mustafa BÜKÜLMEZ 0 Yorum


Merhabalar arkadaşlar,

Bu konu programlaya yeni başlayanlar için değil de bir süredir bu işin içerisinde olanlar içindir. Yani şöyle anlatayım.

Bir  projeye başladınız ve bu proje sql tabanlı olacak. Atıyorum projenizde size bir kişi listesi lazım yazacağınız kod şöyle olacaktır.

public SqlConnection baglanti; 
void kisiGetir()   
{           
if (baglanti.State == ConnectionState.Closed)
{
baglanti.Open();
}
SqlCommand cmd = new SqlCommand("SELECT * FROM Kisiler ORDER BY ID", baglanti);
SqlDataAdapter adp = new SqlDataAdapter(cmd);
DataTable dtable = new DataTable();
adp.Fill(dtable);
dataGridView.DataSource = dtable;
baglanti.Close();   

private void Form1_Load(object sender, EventArgs e)
{          
baglanti = new SqlConnection("Data Source=.; Initial Catalog=Test; Integrated Security=true");
kisiGetir();    
}

Şimdi düşünün her seferinde her SQL işleminde bu kadar kod yazıyorsunuz. Select sorgularında, İnsert sorgularında, Update sorgularında kısacası her SQL işleminde bu kadar yada daha fazla kod yazdığınızı bir düşünün.

Bu şekilde yapılan 5 formdan sonra gına gelir. Kaldi ki büyük bir proje yaptığınızı düşünün. Aman Allah'ımmmmm. Yaz yaz bitmez.

Benim için programlama da 1. Kural şudur. Aynı kodu 2 kere yazıyorsam o işte bir sorun vardır.
Kaldı ki bazıları bununla övünür. 5000 satır kod yazdımmmm. Ben iyi bir programcıyımmmm. vs.vs. Yok öyle bir dünya.
İyi programcı az kodla çok iş yaptırabilen. Kodlara daha sonra baktığında orada ne yazıldığını anlayabilen kişidir. Yani bu kişi kod hammallığı yapmaz.

Ha şu da var ki kodun uzun halini yazmadan kısa hale getiremezsiniz. Kodu anlamadan kısaltamazsınız. bir kodu yüz kere yazıp o kodu yazmaktan sıkılmadan, bıkmadan class mantığına geçemezsiniz.

Yukarıdaki kod bloğu kişi listesi getirmek için yazılmıştır. SQL çekilmiş ve gridview'e yüklenmiştir.
Şimdi bir SQL Classı yazdığımızı düşünelim. Bakalım o kadar kod kaç satıra düşecek?
..
Evet Classımızı yazdık varsayalım. (Onu siz yazacaksınız artık ;).)
Önce class ımızı import ediyoruz.

SqlIslemleriClassim sql =  new SqlIslemleriClassim();
//en üst kısma yazacağız bunu. Değişken tanımlar gibi import ediyoruz.
//Her forma sadece bir kere yazıyoruz

//Şimdi de GridView'i dolduralım.
DataTable dtKisiler = sql.TabloYukle("SELECT * FROM Kisiler ORDER BY ID");
GridView1.DataSource = dtKisiler ;


İşte olay bu kadar.... Şimdi siz sayın bakalım bir class hazırladıktan sonra SQL işlem adedi başına kaç satırdan kar ettik.

Ama işte bunu yapabilmek için ilk kod bloğunda yazan kodların tamamının ne işe yaradığını öğrenmemiz gerekiyor. Çünkü sürekli tekrar eden bir kod bloğunu class ' a çekerken mümkün olduğunda genel bir hale getirmelisiniz. Değişebilecek her alanı her kodu değişkenlere atamalısınız. Yani kısacası ilgili kod blogunu kopyalaıp classin içine yapıştırmakla olmaz. İşte tamda bu yüzden kodların ne işe yaradığını nasıl çalıştığını öğrenmelisiniz.

Şimdilik bu kadar arkadaşlar. Bir classı nasıl oluşturacağımızı da başka makalede anlatacağım.

Saygılarımla
Mustafa BÜKÜLMEZ
http://mustafabukulmez.com/





0 Yorum: