C# da Override Methodlar

By Burak TUNGUT - 21.11.2012 - Kategori C#

Bu makalem de C# ile iki sınıf üretip ikisinin de aynı isimde bulunan methodun farklı sonuçlar vermesini yani diğer methodu ezmesini sağlayacağız.
Override methodlar diğer bir değişle method ezme yöntemiyle base sınıfın methodunu etkisil hale getirerek kendi sınıfındaki methodu nasıl çalıştıracağımızı göreceğiz.

 Override methodlar nesne yönelim mimarisinin olmazsa olmazlarından biridir ve haliyle virtual methodlarda tabi ki. Method ezmeye yarayan override yapısı sayesinde miras aldığımız yani base sınıfımız olan bir sınıftaki methodun eksikliğini giderebiliriz.

Override konusunu iyi bir şekilde kavramak için iki sınıf düşünelim. 1. Sınıfımız insan sınıfı olacak ve adi ve soyadi üye değişkenlerine sahip olacak.Aynı zamanda bu sınıfımızda bilgileriYazdir gibi bir methodumuz olacak ve bu method o kişinin bilgilerini konsola yazacak.

2.Sınıfımız ise ogrenci sinifi olup kisi sinifindan miras alacaktır. Farklı olarak ogrencino üye değişkenine sahip olan bu sınıfımız için ise override bir method yazacağız. Ama öncelikle yazmamamız durumunda ne ile karşılaşacağımızı bir incelemek istiyorum. Şimdi sınıflarımızı görelim,

 

class insan
        {
            private string adi;
            private string soyadi;

            public string Soyadi
            {
                get { return soyadi; }
                set { soyadi = value; }
            }

            public string Adi
            {
                get { return adi; }
                set { adi = value; }
            }

            public virtual void bilgileriYazdir()
            {
                Console.WriteLine("Kişi bilgileri : "+this.adi+" "+this.soyadi);
            }
        }

Şimdi ise insan sınıfında miras alacak olan ogrenci sınıfımızı inceleyelim,

Devamı

C# da Nullable Tipler

By Burak TUNGUT - 21.11.2012 - Kategori C#

Bu makale ile Nullable tipleri görüp, C# da bunların deklare edilmesi ve kullanılmasını inceleyeceğiz.
Nerde ne zaman nullable tip kullanmalıyız ? Nullable tiplerin faydaları ve kontrol edilmeleri...

 Aslında nullable tipler bizim normal hayatımız da kullandığımız veri tiplerinden farklı değiller. Daha doğrusu Nullable yapabileceğimiz tipler aslında günümüz de yazılım geliştirirken kullandığımız değişkenlerdir.

Sözlükteki karşılığı gibi nullable tipler alabildiği değerlerin haricin de boş da olabilmelerini sağlar. Nullable tiplerin faydalarından biri de söz konusu değişkenin boş olması durumunda try catch bloğu kullanmaktansa geriye bool değeri döndüren bir method ile rahatça hata fırlamalarının önüne geçebiliriz.Benim en çok kullandığım kısım ise eğer bir değişken için 3 ayrı değer kullanmam gerekiyorsa int yerine nullable bir bool kullanabiliyorum Böylece true, false ve null değer alabiliyor.

Nullable değişken deklare etmek

Devamı

C# da Extension Method Kullanımı

By Burak TUNGUT - 21.11.2012 - Kategori C#

Bu makalem ile C# da Extension method kullanımını inceleyip, aynı işi yapan normal method ile arasındaki farki göreceğiz.

Bu methodlar sayesinde bize ait olmayan ya da erişim iznimiz olmayan .Net Classlarındaki tipler için dahi methodlar yazabiliriz.

C# 3.0 ile hayatımıza giren extension methodlar bize ait olmayan sınıflardaki tiplere bunlardan bağımsız olarak method yazmamızı sağlar. Örneğin string tipi için de kullandığımız "ToString" methodunu ele alalım, bu method hiç şüphesiz string tipinin yazıldığı class içinde tutulmaktadır. Ama biz ayrıca string tipi için bir extension method yazdığımız da ise kullanımı aynen bu şekilde olacaktır.

Öncelikle bir sınıf yaratıyoruz ve adını "Sinifim" yapıyoruz.
Öyle bir method tasarlıyalım ki gelen int degeri pozitif ise true, negatif ise false değeri geri döndürsün.

Devamı

C# ve Java da Foreach Döngüsü

By Burak TUNGUT - 21.11.2012 - Kategori C#

Bu yazımda C# ve Java da foreach döngüsünü küçük bir integer dizi örneği ile açıklayacağım.

Blog yazarken çokta düzensiz yazmak istemiyorum ama elime bir dil kitabını alıp indexi de takip etme taraftarı değilim :) Fakat temel bilgileride bunun gibi araya sıkıştıracağım.
 

Neden Foreach ?

Aslında neden foreach den önce "Nedir Foreach ?" sorusuna cevap verdiğimiz zaman aynı soruya da yanıtı vermiş olacağız zaten.
Klasik bir tanım yapmaktansa aşşağıda kod ile de göstereceğim gibi bir adet integer dizi düşünelim uzunluğu da 3 olsun ve içeriği sırasıyla 1,2,3 sayılarını içersin.

dizi[0] = 1
dizi[1] = 2
dizi[2] = 3

Şimdi kodlar ile dizi de işlem yaparken for kullanmaktansa foreach kullanmanın syntax kolaylığını görmüş olacağız. Fakat her for kullandığımız yer de foreach kullanamayada biliriz :)

C# ve Java için sıralama alfabetik yapılmıştır :)

Devamı

C# ile Bubble Sorting Algoritma Örneği

By Burak TUNGUT - 20.11.2012 - Kategori C#

Integer veri tipinde oluşmuş bir dizinin eleman sayısı kaç olursa olsun CSharp da Bubble Sorting Algoritma yapısı ile küçükten büyüğe sıralıyacağız.

Aynı örneği C++ ile yapmaktansa CSharp ile yapmayı ve olayı biraz daha genişleterek dizi içeriğinin sabit olmasındansa içeriğin tamamen kullanıcı girdisine göre ayarlamaya çalıştım.

Algoritma Yapısı

Genellikle Integer dizi ya da listelerde kullanılan özelleşmiş bir algoritma tipini inceleyeceğiz.
Bubble sorting algoritmasın da oluşacak olan ikinci for döngümüz ilk indisden son indise kadar olan sayıların arasında ikili büyüklük ilişkisi kurarak şartın doğrulanması halinde yerlerinin değiştirilmesini sağlıyor ve her sonlanan döngüde bitiş elemanı birinci for döngüsünde artan değere göre azalarak tekrarlanıyor.
 

Devamı
1 2 3
Facebook
Son Yorumlar