Ana içeriğe atla

What is Exception ?

Exception Türkçeye "istisna" olarak çevrilebilir.Ben java üzerinden sizlere bu konuda bilgi vereceğim.Java exceptionlara karşı çok sert davranır.Yazılan bir programda çalışmasına fırsat bırakmadan exception oluşma  ihtimali varsa compiler edilmeden hata verecektir.Genelde programcılar arasında bu durum pek hoş karşılanmaz.En azından deneyimi olmayanlar arasında...Bir exception varsa ben düzeltirim diyerek programın çalıştırılmasını en azından compiler edilmesini isterler.Ancak bu sıkı tutum büyük projelerde bulunmaz nimettir.Çünkü program ilk başta hata vermeyebilir. 10 bin satırlık programınız olduğunu düşünün ve birde bakmışız ki programda bir açık var ve bu açığı deneyen kullanıcı programın çökmesine neden oluyor.İşte bu şekilde büyük programlarda açığı kapatmak için yeniden yazmak bile gerekebilir.Biz bunu ufak parçalarda çıkabilecek sorunları o an düşünüp çözmezsek söylediğim örnekte olduğu gibi büyük problemler ortaya çıkabilir.Ufaktan exceptionların ne tür sebeplerden oluştuğunu ve nasıl yakalayabileceğimizi anlatmaya başlayalım.

Exception oluşma nedenleri :

  • Açılmak istenen dosya yoksa yada ulaşma izni bulunmuyorsa.
  • İnternet bağlantısı kopmuşsa 
  • Programa beklenmedik türde girdi yapılmışsa
  • vs vs...
Peki yukarıda yazdığımız gibi bu türde hatalar programımızda bulunuyorsa ne yapmalıyız ?
Bu soruya cevap olarak javada exception yakalama mekanizmamız bulunuyor.

try{
// exceptiona sebebiyet verme ihtimali olan kod parçası
{catch(Exception){
// try komutunda eğer bir exception fırlamışsa çalıştırılacak kod parçası
}

Evet yukarıda yazdığım gibi bir yapıyı kullanırsak program exceptionı yakalayacak ve catch sütunundaki kodları çalıştıracaktır.Exception türlerinide daha sonraki yazımızda değineceğim ve bu sayede aldığımız hatayı noktasal olarak tespit edip çözüm arayışlarına geçebileceğiz.

Yorumlar

Bu blogdaki popüler yayınlar

Polindrom Sayılar

Birbirini takip eden sağdan sola yada soldan sağa okunuşları değişmeyen sayılar yada karakterlere polindrom sayılar(karakterler) denir. C'de bir polindrom sayı üretme programı yazarsak eğer kodlarımız şu şekilde olacaktır. #include<stdio.h> #include<conio.h> void pol_al(int n) { if (n == 1) printf("1"); else { pol_al(n - 1); printf("%d", n); pol_al(n - 1); } } int main() { int n = 0; printf("Sayi:"); scanf_s("%d", &n); pol_al(n); getchar(); getchar (); return 0; }

Phone Gap nedir ? Neden PhoneGap kullanmalıyız ?

Öncelikle söylemem gereken bazı şeyler var daha doğrusu tanımlamam gereken.Gelişen teknolojiyle birlikte artık herkesin evinde bilgisayar olmasını bırakın herkesin cebinde bile var.Üstelik internet bağlantısıda yeterince iyi.Ve cebimizdeki bu bilgisayarların (telefon demek çok basit kaçar) kendine ait işletim sistemleri bulunmakta.Şuanda en çok bildiğimiz işletim sistemleri; Android , İos , Windows Phone ...Bunlar gibi toplam 8 adet telefon işletim sistemi bulunmaktadır.Biz bu işletim sistemlerinde yazılım yada uygulama geliştirmek istesek örnek veriyorum İos için objective-C , Android için Java bilmemiz gerekiyor.Yani ikisinde de uygulama geliştirmek istiyorsak hem Objective-C hemde Java bilmemiz gerekli.Ancak Phone Gap kullanarak sadece Css , HTML ve JavaScript kullanarak 8 işletim sistemi içinde yazabiliyoruz.Ancak bu sınırlı bir ayrıcalık.Büyük projeler için kullanılamayabilir.

What is design pattern ?

Tasarım desenleri tam olarak Türkçe karşılığı olmasa da bu şekilde ifade edilir.Genelde yazılımın tasarım sürecinde karşımıza çıkan sorunlara , tecrübeler doğrultusunda kaliteli çözümler üretilen kalıplardır.Bu kalıpları kullanarak daha ileride karşımıza çıkacak sorunlara yada updatelere esnek çözümler bulabiliriz.Bu sayede hem kodlarımız daha anlaşılır olur hemde değişiklikler rahatlıkla uygulanabilir. Var olan bir problem üzerinde çalışan programcı bulunan çözümü paternleri bildiği için hemen anlayacak ve nasıl bir yol izleyeceğini bilecektir. Creator Design Patterns Abstract Factory Builder  Prototype Singleton Verdiğimiz bilgileri örnekle açıklamak gerekirse; ihtiyacımız olan bütün sistemin kullanabileceği ancak sadece bir tane oluşturulabilen bir class tasarlamak.Biz bunu yukarıda da isimlerinden anlaşılacağı gibi zaten bu yapıyı başkalarıda kullanmış ve en stabil duruma getirilip adı Singleton Design Pattern koyulmuş tasarımı kullanabiliriz. Abstract Factory , B...