Page 17 - Bilgisayar Bilimi Kur 1| I. Bölüm
P. 17
2.1.3. Hata Ayıklama Nedir?
Programlama, karmaşık bir süreçtir ve programcılar programlamada hata (bug) yapabilirler. Prog-
ramlama hatalarını bulma ve düzeltme işlemine hata ayıklama (debugging) denilir. Bir programda üç
tür hata oluşabilir: söz dizimsel hatalar, çalışma zamanı hataları ve anlam bilimsel hatalar.
1. Söz dizimsel hatalar
Söz dizimi, programın yapısı ve bu yapı hakkındaki kurallar demektir. Örneğin Türkçede bir cümle
büyük harfle başlamalı ve uygun bir noktalama işaretiyle sona ermelidir. Bu kurallara uymayan cüm-
lelere “Söz dizimi hatası içermektedir.” diyebiliriz. Programlama dilleri için söz dizimi, yoruma açık
olmayacak şekilde kesin ve net ifadeler içermelidir. Aksi takdirde program, söz dizimi hatası verir ve
programın doğru çalışmasını bekleyemeyiz.
2. Çalışma zamanı hataları
Bu hatalar ancak program çalıştırıldıktan sonra ortaya çıkar. Hesaplanması mümkün olmayan iş-
lemler (sıfıra bölünme) ya da hiç gerçekleşmeyecek koşulların (5<3) yürütülmesi gibi durumlarda ortaya
çıkar.
3. Anlam bilimsel hatalar
Bu durumda program, genellikle hata vermeden çalışır ancak çoğu zaman beklenen sonucu üretmez.
Bu yüzden programı satır satır çalıştırarak, farklı adımlardaki çıktıları gözlemleyerek nerede mantık ha-
tası yapıldığını bularak program doğru biçimde çalışana kadar bu hataları ayıklamak gerekir. Program-
lamayı öğrenirken kazanılacak önemli becerilerden biri de hata ayıklamadır. Yorucu olmasına rağmen,
programlamada bilişsel yoğunluk gerektiren ilginç bir süreçtir. Hata ayıklama deneysel bir yaklaşımdır.
Neyin hatalı gittiğine dair bir fikir oluştuğunda programı değiştirerek tekrar çalıştırırız. Böylece prog-
ramlamaya yeni bir boyut daha kazandırmış oluruz. Programlama, program doğru biçimde çalışana
kadar aşamalı olarak hata ayıklama sürecidir.
2.1.4. Günlük Hayatta Problem Çözme
Günlük hayatımızda problem-
lerimizi çözmek için yaşantımızı
etkileyen pek çok karar veririz.
Bu kararlar yalnızca yaşantımızı
etkilemekle kalmaz, bazen yaşam
kalitemizi ve geleceğimizi bile et-
kileyebilir. Örneğin karşılaştığımız
problemler, televizyonda hangi ka-
nalı seyretsem gibi basit de olabilir,
hangi mesleği seçmeliyim gibi çok
önemli de olabilir. Yanlış bir karar
verilirse zaman ve kaynaklar boşa
gidebilir, bu nedenle nasıl doğru
karar verildiğini öğrenmek önemli-
dir. En iyi kararı vermek aslında problem çözmektir. İnsan hayatı aslında bir problem çözme sürecidir.
Genellikle bir problemin birden fazla çözümü vardır, her bir çözüm bir alternatif olarak düşünülebilir.
Problem çözme, amaca ulaşabilmek için alternatifler arasından en uygun yolu belirlemektir. Alternatif-
ler, farklı koşul ve beklentilere göre şekillenir. En uygun çözüm ise farklı koşul ve durumlar için deği-
şiklik gösterebilir. Bu nedenle farklı kişiler ve problemler için çözüm önerileri de farklılık gösterebilir.
31