Ana içeriğe atla

( C#) Ders 7 - C# ile Kendi Hata Türlerimizi Nasil Olustururuz

.NET Framework de Hata Hiyerarsisi

.Net de iki tip hata türü vardir:
  • Çalisma aninda(runtime) olusturulan (Common Language Runtime) hata türleri, bunlar System Exceptions diye adlandirilir.
  • Kullanici programi tarafindan üretilen hata türleri. Bunlar da Application Exceptions diye adlandirilir.

.Net framework de hata hiyerarsisi asagidaki gibidir.


hata hiyerarsisi

Yukaridaki hiyerarsiden dolayi kullanici tarafindan olusturulan her hata ApplicationException sinifindan türemek zorundadir. Asagidaki kod örnegi OrnekHataTuru adinda yeni bir hata türü olusrurmamizi saglar.
?
1
2
3
4
5
6
7
8
9
10
11
class OrnekHataTuru : ApplicationException
{
    public OrnekHataTuru() : base ("Sifira Bölme Hatasi")
    {
 
    }
    public OrnekHataTuru(string message) : base(message)
    {
 
    }
}
Yukaridaki kod blugu ile hatamizi olusturduk. Simdi bir örnekle bu hata türünü kullanalim
?
1
2
3
4
5
6
7
static double Bol(double a, double b)
{
    if (b == 0)
        throw new OrnekHataTuru();
    double c = a / b;
    return c;
}
Yukarida bölme islemi yapan ve bölen 0 oldugu zaman hata firlatan bir fonksiyon yazdik. Simdi bu fonksiyonu main içinde kullanip sonuçlari görelim.
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
static void Main()
{
    try
    {
        Console.WriteLine("Try blogu içinde");
        double d = Bol(3,0);
        Console.WriteLine("Bolum : {0}",d);
 
    }catch(OrnekHataTuru e)
    {
        Console.WriteLine("Catch blogu içinde");
        Console.WriteLine("Hata olustu.");
        Console.WriteLine("Hata Mesaji"+e.Message);
    }
}

Kendi hata türlerimizi olustururken dikkat edilmesi gereken bazi önemli noktalar sunlardir:

  • .Net frameworkde tüm hata türlerinin sonunda "Exception" ifadesi yer alir. Örnegin; SystemException, NullReferenceException vs. Bu yüzden tanimladiginiz hata türünü isimlendirken hata türü isminin sonunda Exception ifadesini kullanmaniz önerilir. Bizim yaptigimiz örnekde buna dikkat etmedik ama siz edin :)
  • Olusturdugunuz Hata türünü her zaman ApplicationException sinifindan türetin.
  • Hata yakalama ve firlatma mekanizmasi bir miktar performans kaybina yol açar, Bu yüzden gereksiz hata firlatma ve yakalama islemleri yapmayin.

Yorumlar

Bu blogdaki popüler yayınlar

JavaScript ile Ziyaretçi Bilgileri Nasil Alinir

Bu makalemizde javascript ile web sayfamizi ziyaret eden kullanicilarin hangi site üzerinden geldigi, kullandigi tarayici bilgisi, ekran çözünürlügü ve Ip adresi gibi bilgileri nasil alacagimizi anlatacagiz. Tarayici Tipini Almak Ziyaretçinin kullandigi tarayici tipini asagidaki javascript kodu ile alabiliriz. function Tarayicitipi() {   alert(navigator.appName); } Tarayici Versiyonunu Almak function Tarayiciversiyon() {   alert(navigator.appVersion); } Ziyaretçinin Hangi Baglantiyi Kullanarak Geldigi Bilgisi (referral bilgisi) Eger ziyaretçi sayfamiza direk olarak degilde bir linki takip ederek geldi ise, geldigi adresi almak için asagidaki kodu kullaniyoruz. Bu sayede arama motorlarin gelen ziyaretçileride bulabilir ve farkli analizler için kullanabiliriz. function ReferrelBilgisi() {    alert(document.referrer); } Ekran Çözünürlügünü Almak function Cozunurluk() {    var w = screen...

GPS'li şapkayla yolunuzu bulmak çok kolay!

Bu ilginç görünümlü şapkayı giydiğinizde, yolunuzu hiç kaybetmeyeceksiniz! Gitmek istediğiniz mekanı bulmak için telefonunuzu cebinizden çıkarmanıza artık gerek yok. Çünkü bu şapka, size yolu tarif edebiliyor, üstelik yalnızca sesle. GPS destekli silindir şapka,  Cornell Üniversitesi  araştırmacıları tarafından geliştirilmiş. Prototip şu an korkunç görünüyor olabilir, ancak onu kullanmak için dil bilmenize bile gerek yok. Şapka, ses tonlarıyla yolunuzu bulmanızı sağladığından elinizi kullanmanıza da gerek kalmıyor. Bu şapkayı yakın bir zamanda satın almanız mümkün olmayacak, ancak teknolojinin navigasyon uygulamalarına uyarlanması faydalı olabilir. Teknoloji görsel ipuçlarıyla çalışmadığından, özellikle görme sorunu yaşayan kullanıcıların işine yarayabilir.

Web Debugging - Hata Ayiklama (Fiddler Aracinin Kullanimi)

Debugging, hata ayiklama, programcinin olmazsa olmazi diyebiliriz. Kodlama sirasinda çikan hatalarda ya da hatasiz çalisan programda istenen sonuç dönmeyince, nerde hata yaptim diye satirlari incelemeye baslariz. Genelde kodlama sirasinda çikan hatalarimizda derleyici neyi yanlis yaptigimizi söylerken, runtime' da hatalarla karsilasinca ya da islemde bir yanlislik varsa isler biraz zorlasir. Pek çogumuz breakpoint'lerle adim adim inceleme yapariz, eger javascript kodlarimiz varsa alert'ler kullanarak isin içinden çikmaya çalisiriz. Tabi bu durum her zaman ise yaramayabilir, ya da çok can sikici bir hale dönüsebilir. Bu durumlarda browserda aslinda neler oldugunu ögrenmek için http requestlari takip edebilecegimiz programlar var. Fiddler bunlardan birisi. Fiddler Nedir Fiddler, bilgisayar ve internet arasindaki tüm web trafigini takip eden ve detayli bir sekilde analiz yapmamizi saglayan ücretsiz bir http debugging (Hata Ayiklama) programidir. Bu program, http trafigini...