|
 |
« : 15 Ocak 2008, 20:12:01 » |
|
Programcılığa ilk başladığınız zamanlarda mükemmel bir programyazarsınız son derece işlevseldir, görevini tam sizin istediğiniz gibiyerine getirir, ufak tefek eksiklikleri vardır onlarıda ilerdetamamlıycaksınızdır. Sonra programı bir arkadaşınıza gösterirsiniz veyatoplu kullanıma açarsınız, ben yaptım dersiniz kendinizle gururduyarsınız. Ama o da ne; arkadaşınız bişey yapar ve program hata veripkapanır. Bu durumla karşılaşmamak için programınız kullanılırkenyapılabilecek tüm hataları görebilmeli ve buna karşı önceden önlemalabilmelisiniz, daha doğru bir tabirle saçma sapan düşünebilmelisiniz.Mesela kullanıcı bilgilerini alan bir form yapmışsınız adını, soyadınıve yaşını alıp bir veritabanına kaydediyorsunuz; herşey güzel ve basitama bir kullanıcı geliyor sizin yaşını girmesini beklediğiniz Textbox aadını giriyor veya yazıyla otuz yazıyor ve VB önceden ayarlanmamışhatalara karşı verdiği tepkiyi veriyor, yani hatayı ayrıntılarıylaverip kapanıyor. Aslında kapsamlı bir program yazdıysanız yapılabilecektüm hataları görmenize belkide imkan yoktur, ama programınızı sizdenbaşkalarınında kullanabilmesini istiyorsanız hataları en azaindirmelisiniz.Hata ÇeşitleriProgram yazarken yapılan 3 tip hata vardır.1) Yazım Hataları: VB çok kolay bir olmasına rağmen yinedeprogramı yazarken hata yapabiliriz. Mesela "if" den sonra "end if"koymayı unutabiliriz.2) Run-Time Hataları: Programınız çalışırken verdiğihatalardır. Mesela Disket sürcüye bazı veriler kaydetmek istiyorsunuzama disket sürücü bilgisayarda yok.3) Mantıksal Hatalar: En tehlikeli hata tipidir. Birproblemle karşılaştınız ve çözümünüde buldunuz. Ama bulduğunuz çözümdoğru değil ve siz farkında bile değilsiniz. VB herhangi bi hata vermezama doğru çözümede ulaşamazsınız, tüm kodunuzu tekrar incelemeniz veyeni bir çözüm üretmeniz gerekir, bunun için işlemlerinizi önceden çokiyi tasarlamalısınız.HATA DÜZELTME Tamam yapabileceğiniz hatalar bunlar, peki bunları nasıldüzelticez. VB, program yazarken yaptığınız hataları düzeltebilmemiziçin bize birçok araç gereç sunar. Şimdi bunları inceleyip nerelerdekullanabileceğimize bakıcaz. Ama önce yapamamız gereken menüden View -ToolBars - Debug' ı işaretlemek ve Debug penceresiniz görünür halegetirmek, bu pencereyi uygun bi yere yerleştirin, hep gözünüzün önündeolsun.Önce bu pencere üzerinde göreceklerimize ve göremeyeceklerimize topluca bir bakalım.1) Start (F5)2) Break (CTRL + BREAK)3) End4) Toggle BreakPoint (F9)5) Step Into (F8)6) Step Over (SHIFT + F8)7) Step Out (CTRL + SHIFT + F8) Run To Cursor (CTRL + F8)9) Set Next Statement (CTRL + F9)10) Show Next Statement Yanlarında kısayollarını da verdim, zamanla zaten çokkullandıklarınızın kısayollarını öğrenirsiniz. Bunların ne işeyaradığına geçmeden önce anlamamız gereken önemli bir kavram var; odaBreak Mode. Programımızı VB üzerinden denerken hata verdiğinde durupbize hata oluşan satırı sarı bir ok ve sarı bir zemin üzerindegöstermesi anıdır, bu durumda VB bize hatanın yerini gösterir ve durumael koymamızı bekler. Türkçem veya İngilizcem yeterince iyi olmadığıiçin "Break Mode" u öylece bıraktım. Güzel bir türkçe karşılık düşünenolursa bana mail atsın )1) START: Programınızı başlatır veya Break Mode a geçmiş programımızı tekrar normal çalışma moduna döndürür.2) BREAK: Programımızı Break Mode a alır, böylece kendimiz neler oluyor satır satır inceleyebiliriz.3) STOP: Programımızı durdurur yani Disegn Mode(Dizayn mod) ---nasıl çevirdim ama )--- a alır.4) TOGGLE BREAKPOINT: Hani kod yazarken yanlışlıkla kodyazılan yerin solundaki boşluğa mouse la dokunursunuz ,bir kırmızınokta oluşur ve o satırın taban rengi de kırmızı olur. Evet aslındaistemeden de olsa Breakpoint koymanın yöntemlerinden birini uygulamışoluyorsunuz. Diğer yöntemler F9 a basmak veya Debug penceresiüzerindeki el işaretine tıklamak. Peki bu yaptığımız ne işe yarar:Programımızı Start düğmesine basarak normal bir şekilde çalıştırdık amaherhangi bir yerde Break Mode a geçerek kodumuzun çalışmasına bakmakistiyoruz. İşte bu yerlere istediğimiz sayıda BreakPoint(Durak Noktası)koyabiliriz5) STEP INTO: Programımız Break Mode da çalışırken satırsatır ilerlememizi ve neler oluyor iyice incelememizi sağlar.Programınızı direk olarak F8 le yani Step Into ile deçalıştırabilirsiniz. Böylece programınız hiç normal çalışma modunageçmeden direk olarak Break Mode da çalışacaktır. Bunu Visual Basic eyeni başlayanlar için şiddetle öneririm. Çünkü Döngülerin, koşullarınnasıl çalıştığını satır satır inceleme şansınız olur. Böylelikle nasıldaha iyi ve hızlı kod yazabileceğinizi görebilirsiniz. Ayrıca BreakMode da iken mouse u herhangi bir değişkenin üzerinde tutarsak onundeğerini de görebiliriz.6) STEP OVER: Step Into nun değişik bir halidir diyebiliriz.Ama fonksiyonların ve prosedürlerin içine girip size burada neleroluyor diye göstermez, sadece fonksiyonun yaptığı işlemi yapar ve biralt satıra geçer. Step Into ile Step Over arasındaki farkı aşağıdakikodu formunuzun kod bölümüne yapıştırıp, bir kere Step Into ile, birkere de Step Over la deneyin; farkı daha rahat anlayabilirsiniz, gerçiİngilizce karşılıklarından da durum anlaşılabiliyor.Private Sub Form_Load() Dim x As Integer, y As Integer, z As Integer x = 5 y = 4 z = Topla(x, y) MsgBox zEnd SubFunction Topla(a, b) As Integer Topla = a + bEnd Function Eğer Step Into ile ilerlerseniz Toplama fonksiyonunun içinegirecek ve size burada neler olup bittiğini gösterecektir, ama StepOver la ilerlerseniz bunu göremezsiniz. Bu size nerde mi lazım olur,aynı burda olduğu gibi fonksiyonun veya sub ın doğru sonuç vereceğindeneminsinizdir ve içine girip bakmaya ihtiyaç duymasınız.7) STEP OUT: Bu da bir yardımcıdır. Şimdi diyelim yukardakiörnekte Break Mode da F8 le yani Step Into ileilerliyorsunuz,yanlışlıkla Topla fonksiyonunun içine de girdiniz,burası doğruydu niye girdim ben buraya dediğiniz zamanlar içinyapılmıştır. Hemen Step Out a tıklarsınız ve fonksiyonun geri kalanınınişleyişini görmeden bir sonraki adıma atlarsınız. Ve rahat bir nefesalırsınız çünkü yazdığınız fonksiyonlar herzaman bu kadar kısa olmaz,yüzlerce binlerce döngü içerebilir.Bunu da yukardaki örnektedeneyebilirsiniz RUN TO CURSOR: İmlecin olduğu yere git diyebiliriz. Bu dabir ihtiyaç sonucunda çıkmıştır. Diyelim ki yine Break Mode da yine F8ile (Step Into) ilerliyorsunuz, o da ne önünüzde 100 döngülük bir kodparçası var, döngüde herhangi bir hata yok biliyorsunuz ve onunçalışmasını görmeyi kesinlikle istemiyorsunuz ama mutlaka çalışsın veyapacağı işlemleri yapsın da istiyorsunuz. Şimdi ne olcak tek tekilerleyerek bu işkenceye katlancakmısınız yoksa Run To Cursor u mukullancaksınız. İmleci istediğiniz yere getirin ve Debug menüsünden RunTo Cursora tıklayın yada hemencecik CTRL + F8 e basın ve istediğinizolsun. Hem kodlarınız çalışsın hemde siz rahat edin.9) SET NEXT STATEMENT: Az önceki duruma dönelim Break Mode da F8 ile satır satır ilerliyorsunuz, yine karşınıza uzun bir ayı çıktı )pardon uzun bir döngü çıktı, sizde biliyorsunuz bu döngüde bir hata yokben bunu Run To Cursor metoduyla geçiyim diyorsunuz ve geçiyorsunuzsonra bir düşünüyorsunuz o geçtiğiniz döngüde de hata olabilir. Şimdine yapacaksınız herşeye yeniden mi başlıycaksınız,tabiki hayır. Hemensiz F8 ile ilerlerken sizinle beraber ilerleyen sarı ok varya, o sarıoku tutup döngünün olduğu satıra çekiyorsunuz işte bu kadar kolay F8ile ilerlemeye döngünün üzerinden devam edebilirsiniz, aynı işlemikodunuzda ileri satırlara gitmek için de kullanabilirsiniz. Buradaunutmamanız gereken en önemli şey bu yöntemi kullandığınızda aradakalan kodlar çalıştırılmayacak, atlanacaktır.10) SHOW NEXT STATEMENT: Bu diğerlerine göre daha basit biryöntemdir. Yaptığı tek şey sizi sarı okun olduğu yere ***********ürmektir. Neişime yarıyacak ki bu benim, ben zaten sarı oku görüyorum )diyorsanız, bunun size sağladığı avantajı, sayfalarca kod yazıp bukodların içinde Debug yapmaya çalıştığınız zaman daha iyianlayabilirsiniz.
|
|
|
|
|
Logged
|
Etiketler:
Hata düzeltme(debug) ,
Hata düzeltme(debug) indir ,
Hata düzeltme(debug) download ,
Hata düzeltme(debug) yükle ,
Hata düzeltme(debug) şarkı sözü ,
Hata düzeltme(debug) program ,
Hata düzeltme(debug) yeni ,
Hata düzeltme(debug) msn ,
Hata düzeltme(debug) ifadeleri ,
Hata düzeltme(debug) mp3 ,
Hata düzeltme(debug) sözleri ,
Hata düzeltme(debug) resimleri ,
Hata düzeltme(debug) resim ,
Hata düzeltme(debug) videosu ,
Hata düzeltme(debug) kaydet ,
Hata düzeltme(debug) bedava ,
Hata düzeltme(debug) fotoğrafları ,
Hata düzeltme(debug) albümü ,
Hata düzeltme(debug) full ,
Hata düzeltme(debug) videoları ,
Hata düzeltme(debug) video ,
Hata düzeltme(debug) free ,
Hata düzeltme(debug) forum
|
|
|