Hataları Bulmak ve Düzeltmek

codmaster

Yeni üye
26 Tem 2010
44
0
Şimdiye kadar programlarınızda karsılastıgınız hatalar,büyük olasıkla basit yazım ya da sözdizimi hatalarıydı.Ama programınızda daha kötü pogramınızdaki nesne,özellik ve bildirileri söyle bir gözden geçirmekle bulup düzeltemeyeceginiz bir sorunla karsılasırsanız ne olcak ? Visual basic programlama ortamı programınızdaki hataları bulup düzeltmek için kullanabileceginiz çeşitli araçlara sahiptir.Bu araçlar hata yapmanızı engelleme bulma ve düzeltme konusunda cekeceginiz sıkıntıları önemli ölçüde azaltacaktır..

İki koşullu ifadeyi degerlendirip sonuca göre iki iletiden birini görüntüleyen asagıdaki ıf then karar yapısını ele alalım



If yas > 13 AND Yaş < 20 Then


Text2.text = ''Henüz çok gencsin.''


Else


Text2.Text = '' Artık o kadar genç degilsiniz.''


End If


Bu karar yapısındaki hatayı bulabilir misin ? Genel tanımına göre bir genç.13 ve 19 yasları arasında ( bu yaslar dahil ) olan bir kisidir.Buna karsın, yukarıda verilen yapı tam olarak 13 olan bir kisinin durumunu tanımlayamamaktadır.Bu yaş için yapı hatalı olarak artık okadar genc degilsiniz'' iletisini görütülemektedir. Bu bir sözdizimi hatası degildir yani yapıda yer alan bildiriler visual basic kurallarına uymaktadır.Bu durumda dogru karar yapısının If.. Then bildirisindeki birinci karsılaştırmada bir büyük eşittir işleci (>=) kullanması gereklidir.


If yas >=13 AND Yaş < 20 Then


ister inanın ister inanmayın bu visual basic programlarında rastlanan en yaygın hata türüdür.Cogunlukla ama her zaman degil calısan program kodlarındaki hatalar bulunması ve düzeltmesi en güc olanlardır..


ÜÇ HATA TÜRÜ


Visual basic programalarında üç tür hata oluşabilir : sözdizimi hataları, calısma hataları ve mantık hataları..


* Sözdizimi hataları ya derleyici hataları visual basic kurallarını ihlal eden yanlıs yazılmıs bir özellik ya da anahtar sözcük gibi programlama hatalarıdır.Daha siz program bildirilerini yazarken visual basic programlarınızdaki çeşitli tipte söz dizimi hatalarına işaret eder ve bütün sözdizimi hataları düzeltilmeden programın calıstırılmasına izin vermez..


*Çalısma zamanı hataları calısması sırasında beklenmeyen bir sekiklde programın durmasına neden olan hatalardır.Bir dıs olay ya da fark edilmemis bir sözdizim hatasının calısırken olusturur.Bir LoadPıcture işlevinde yanlıs yazılmıs bir dosya adı ya da açık bir distek sürücü calısma zamanı hatalarına neden olabilicek durumlardır.


* Mantık hataları insanlardan kaynalanan program kodunun yanlıs sonuclar üretmesine neden olan programlama hataları biciminde hatalardır.Bir cok hata ayıklama calısması programcının yaptıgı mantık hatalarını bulmak ve gidermek üzerine odaklanır.



KESME KİPİNİ KULLANMAK


Bir mantık hatasını tanımlamanın bir yolu da programı satır satır calıstırmak ve bir ya da daha cıj degisken veya özelligin içerigini degişirken incelemektedir.


Bunu yapmak için program calısırken kesme kipine break mode geöebilir ve kodunuzu code penceresinden izleyebilirsiniz.Kesme kipi visual basic derleyecisi programı calıstırırken ona yakında bakmanızı saglar.Bu islem tıpkı bir ucagın kokpitinde pilot ve yardımcı pilotun arkarsında bir sandalyeye oturup ucagı kaldırmalarını ve ucurmalarını izlemeye benzer.Ama buradaki durumda istediginiz anda denetimlere dokunabilme ayrıcalıgınız vardır


Programınızdaki hataları ayıklarken tamamen hata bulma ve düzeltme işlerine ayrılmıs dugmelere sahip Debug araç cabugunuzu kalkanmanızı iyi olur.Kritik degiskenlerin program içinde aldıgı degeleri gmrnek için de Watches peneresini açabilirsiniz.Bundan baska İmmediate penceresini kullanarak program bildirilerini girebilir ve sonuclarını hemen alabiliriz


Diger alıstırmamızda ele alınan If then yapısında fark ettigimiz mantık hatasını bulmak ve düzeltmek için kesme kipini kullanacaksınız.Hata gercekte programın bir parcasını olusturur.Sorunu bulmak için Debug araç cubugu üzerindeki program yönergelerini birer birer degisiklikleri izlemek için de QUİCK Watch dugmesini kullanacaksınız.Bu teknigi dikkatlice inceleyin.Bu teknigi kullanarak programlarınızda ortaya cıkabilicek hirçok hata türünü düzeltebilirsiniz


ALINTIDIR


KAYNAK
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.