Yazan: Paint
Ders: Hata ayıklama
Tarih: 14 Aralık 2011 /Çarşamba
Giriş:
Hata ayıklama kodlar için oldukça önemli bir parçadır.Öncelikle bir yönteminizin olması gerekir.Hata ayıklamak birçok kişi için ilk başta sıkıcı gelir, aslında evet öyle biraz sıkıcı ve sinir bozucu ama bunu yapmak zorundasınız.
Ön koşullar (Gereksinimler):
Hata ayıklamak için çok fazla şeye ihtiyacınız yok.
Sadece üç şey gerekli.
-mIRC
-Kodunuz
-Beyniniz
Genellikle kodlamalarda en çok karşılaşılan hatalar:
-Kodun doğru değerlendirilmemesi
-Döngünün yanlış kurgulanması
-Koşulun yanlış tanımlanması
Hata ayıklamak için ipuçları:
Hata ayıklarken ilk yapmamız gereken hatanın neden kaynaklandığını tespit etmek. Yani hataya sebebiyet veren satırı bulmak genelde mIRC'te hata olan satırı şöyle bir mesajla görürüz:
* /echo: Yetersiz veya eksik parametre (Satır 99, script21.ttf)
Burda bize 99. satırda hata olduğunu söylüyor peki bu yeterli gelmezse ne yapabiliriz? Örneğin her satırın başına bir echo koyup kodun o satıra kadar çalışıp çalışmadığını görebiliriz.
Örnek:
Kod: Kodu kopyalamak için üzerine çift tıklayın!
alias debug {
if 1 > 0 {
echo -a satır 1 sorunsuz.
.var %debug Hata ayıklama.
echo -a Halen çalışıyorum satır 3 deyim!!!
echo -a %desa
echo -a Sonuna kadar hata yok.
}
Evet kodda "echo -a %desa" bu bölümdeki %desa değişkenin bir değeri olmadığı için otomatik olarak kod hata verecektir. Ve bu yüzden sonuna kadar hata yok mesajını da göremiyeceğiz.
Not: Eğer ders işe yaradıysa yukarıdaki anlatım bozukluğunu da fark etmişsinizdir
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
Örneğin bir event açalım.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:TEXT:#:*merhaba*: msg $chan Merhaba hoş geldin.
Kodumuzda istediğimiz herhan gibi biri merhaba yazarsa kanala "Merhaba hoş geldin." yazması.
Peki bu event çalışmadı ne yapmalıyım öncelikle panik yapmamalısın.
/help on Event veya /help on Text yaparak olaylar hakkında biraz daha bilgi sahibi olmayı denemelisin.
/help on text yaptığında karşına text eventinin özelliklerini anlatan bir yardım dosyası gelecek.
Ve karşında başlıktan sonraki ilk 2 satır zaten gerekli bilgiyi veriyor.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
Format: on <level>:TEXT:<matchtext>:<*><?><#[,#]>:<commands>
Kod: Kodu kopyalamak için üzerine çift tıklayın!
on seviye:TEXT:Yazı:Pencere:<komutlar>
olarak kısaltabiliriz. Peki biz kodumuzda ne yapmıştık ?
Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:TEXT:#:*merhaba*: msg $chan Merhaba hoş geldin.
Evet görüldüğü gibi pencere yerine yazıyı, yazı yerine pencereyi yazmışız. Şu şekilde düzenlersek:
Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:TEXT:*merhaba*:#: msg $chan Merhaba hoş geldin.
Sorun kalmaz.
Okuduğunuz için teşekkürler umarım yeterince açıklayıcı olabilmişimdir.