IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Dersleri (https://www.ircforumlari.net/mirc-scripting-dersleri/)
-   -   Hata ayıklama sanatı (https://www.ircforumlari.net/mirc-scripting-dersleri/435477-hata-ayiklama-sanati.html)

Paint 14 Aralık 2011 22:13

Hata ayıklama sanatı
 
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:

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 :)

Örneğin bir event açalım.

Kod:

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:

Format: on <level>:TEXT:<matchtext>:<*><?><#[,#]>:<commands>
Kod:

on seviye:TEXT:Yazı:Pencere:<komutlar>
olarak kısaltabiliriz. Peki biz kodumuzda ne yapmıştık ?

Kod:

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:

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.

Pargali 26 Aralık 2011 05:13

Cevap: Hata ayıklama sanatı
 
Eline Sağlık @[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

Rohit 30 Aralık 2011 01:28

Cevap: Hata ayıklama sanatı
 
muhtesemsin dostum.

Paint 03 Ocak 2012 20:33

Cevap: Hata ayıklama sanatı
 
Alıntı:

Hypnos Nickli Üyeden Alıntı (Mesaj 1040983143)
Gerçekten işe yarıyor :) bende şöyle bir sorun vardı.
PHP- Kodu:

* /echo: Yetersiz veya eksik parametre (Satır 3mirc10.cer

Satır ise şu.
PHP- Kodu:

  $chan background -p $chan image/logo.jpg updatenl haltdef 

Derste Söylenildiği gibi echo -a uyguladım yani şöyle.
PHP- Kodu:

echo -a $chan background -p $chan image/logo.jpg updatenl haltdef 

Hoppa Sorun Düzeldi :))))))))

Faydamız olduysa ne mutlu. Aslında çok daha uzun yazabilirdim fakat uzun ve okunmaz bir konu olmasını istemedim açıkcası bir ara vakit bulursam dökümanı uzatacağım bu olumlu tepkilerden sonra.

Beklenti 18 Nisan 2012 03:24

Cevap: Hata ayıklama sanatı
 
Konuyu azcık hortlatacağım ama bende şöyle bir hata var ama satır numarası vermiyor.

/msg: Yetersiz veya eksik parametre

Mirce biri op verdiğinde satırsız şekilde bu hatayı veriyor. Nasıl çözebiliriz? Op teşekkür dialogunu silmeme rağmen gitmedi.

SiLuet 20 Nisan 2012 11:22

Cevap: Hata ayıklama sanatı
 
Alıntı:

Beklenti Nickli Üyeden Alıntı (Mesaj 1041095019)
Konuyu azcık hortlatacağım ama bende şöyle bir hata var ama satır numarası vermiyor.

/msg: Yetersiz veya eksik parametre

Mirce biri op verdiğinde satırsız şekilde bu hatayı veriyor. Nasıl çözebiliriz? Op teşekkür dialogunu silmeme rağmen gitmedi.

Sadece Size Op verildiğinde Çıkıyorsa Hata Mesajı Remote Kısmında :op: Şeklinde Arama Yapın Çıkan Eventleri Kontrol edin.

Beklenti 20 Nisan 2012 17:15

Cevap: Hata ayıklama sanatı
 
Alıntı:

SiLuet Nickli Üyeden Alıntı (Mesaj 1041096791)
Sadece Size Op verildiğinde Çıkıyorsa Hata Mesajı Remote Kısmında :op: Şeklinde Arama Yapın Çıkan Eventleri Kontrol edin.

Hatayı çözmüştüm ama teşekkürler. Hata satır ve umaraları bende yazmıyor lakin daha önce eklediğim teşekkür sistemi dialogu bu hataya sebeb oluyormuş. Sildiğimi düşünüyordum ama nasılsa aynı kodu 2 kere eklemişim (: Birini silsem bile diğeri hata vermeye devam ediyormuş.

sesliyetenek 18 Mayıs 2012 23:16

Cevap: Hata ayıklama sanatı
 
tşkler


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 12:14.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk