Sayfalar

10 Mayıs 2014 Cumartesi

Conditional Breakpoint İle Daha Hızlı ve Etkili Debugging - Eclipse ve Chrome Örneği

English version is at DZone

Yazdığımız kodun çalışmasını incelemek veya kodda alınan bir hatayı bulabilmek için çoğunlukla debugging yöntemini kullanırız.

Günümüzde birçok IDE ve hatta browser'lar debugging yapmayı mümkün kılmaktadır.

Bir anlamda kodu ve çalışması sırasında değişkenlerin aldığı değerleri "didiklediğimiz" debugging işleminin daha hızlı ve etkili yapılmasına yardımcı olduğunu düşündüğüm bir yöntemi aşağıda paylaşmak isterim.

Aşağıda bu yöntemin Eclipse IDE'sinde ve Chrome browser'ındaki örneklerini göreceksiniz. Farklı IDE ve browser'larda da bu yöntemi uygulayabilirsiniz.

Eclipse'de Java kodumuzu debug etmek yani nasıl çalıştığını izlemek için istediğimiz satıra breakpoint koyarız.


 Kodumuzu debug modunda her çalıştırdığımızda breakpoint koyduğumuz satırda  kodun çalışmasının durakladığını görürüz. Bu sırada koddaki değişkenlerin anlık değerlerini de görebiliriz.


 Kodun hangi değerden veya sebepten dolayı hata aldığını bildiğimiz durumlarda, istediğimiz durumun gerçekleşmesini görebilmek için değişken değerlerini her geçişte kontrol etmek yerine breakpoint özelliklerinde bu durumu(condition) belirterek kodun sadece o durumda duraklamasını  sağlayabiliriz. Bu şekilde beklediğimiz durumun gerçekleşmesini daha hızlı görebiliriz.






Bu yöntemle, breakpoint’e gelindiğinde, kodun çalışmasını duraklatmadan istediğimiz farklı bir kodun çalıştırılmasını sağlamamız bile mümkündür.



Hatta, breakpoint’e gelindiğinde değişkenlerin değerlerini bile değiştirebiliriz.


Bu yöntemle, istediğimiz breakpoint’ten istediğimiz  bir exception’u bile throw edebiliriz. Bu şekilde, gelmesi nadir olan bir exception’ ın nasıl catch edildiğini görmemiz mümkündür.



Debugging işlemini Chrome üzerinde de yapmamız mümkündür. Bu sefer Javascript kodumuzu debug edebiliriz. Bunun için, F12’ye basarak ya da “Araçlar(Tools) > Geliştirici Araçları(Developer Tools)” menüsünden açılan penceredeki “Sources” menüsü altından debug etmek istediğimiz kodu seçip breakpoint’i ekleyebiliriz. Ardından burada da beklediğimiz durumu belirtebiliriz. Kodun çalışması ancak, belirttiğimiz durum oluştuğunda duraklayacaktır.



ali kemal taşçı

2 yorum:

Unknown dedi ki...

bu conditionlar ayri bir dosya halinde versiyon kontrol sistemine eklenebiliyor mu?

. dedi ki...

Açıkçası hiç ihtiyaç duymadım. Şimdi Google'da "eclipse breakpoint export" diye aratınca aşağıdaki gibi bir bağlantı buldum. Faydası olur umarım:

http://stackoverflow.com/questions/11340959/is-it-possible-to-save-a-set-of-breakpoints