9. SınıfBilişim Teknolojileri

Hata Bulma ve Kod Denetimi

Bilişim Teknolojileri · 9. Sınıf · Diziler ve Fonksiyonlar

Konu Anlatımı

Hata Bulma ve Kod Denetimi

Bir programı yazmak ile o programı ayıklama arasındaki fark ilk bakışta önemsiz görünür. Oysa öğrencilerin en çok zorlandığı iş, hatanın kendisini bulup kök nedeni düzeltmektir. Bu konuda üç hata türünü ayırt etmeyi, hatayı adım adım izleyerek bulmayı ve düzeltilen kodun başka bir yerde sorun çıkarmadığını sınamayı öğreneceğiz.

Konunun çalışma alanı, 4. ünitede öğrendiğimiz diziler ve fonksiyonlardır. Bir dizinin sınırının bir eleman dışına taşması ya da geri değer döndürmeyi unutan bir fonksiyon, tipik hata kaynaklarıdır. Kod denetimi ise programcının kendi yazdığı kodu yabancı bir gözle inceleme ve sınama yöntemleriyle doğrulama süresidir.

1. Ne Öğreneceğiz ve Ön Bilgi

Ön bilgi olarak değişken, veri tipi, koşul ve döngü yapılarını, ayrıca dizilerin sıfırdan başlayan indekslerle tutulduğunu ve fonksiyonların geri değer döndürdüğünü bilmemiz gerekir. Konuya geçmeden önce kendinize şu soruları sorun: Program neden durur? Program neden farklı bir sonuç üretir? Program neden beklenenden yavaş çalışır? Bu soruların cevabı, hata türlerini birbirinden ayırmanın anahtarıdır.

Bu konunun sonunda bir programı denetim altına almayı, bulunan hatada yalnızca belirtiyi değil nedeni düzeltebilmeyi ve düzeltme sonrasında tüm sınamaları yeniden yürütebilmeyi hedefliyoruz. Denetim araçları bize programın içinde adım adım yürüme ve değişkenleri izleme imkânı verir.

2. Temel Kavramlar ve Sınıflandırma

Programcılar hatayı üç ana başlıkta toplar. Sözdizimi hatası, yazım kurallarına uyulmamasıdır; eksik parantez, eksik noktalama veya tanımsız bir komut derleyici tarafından yakalanır ve program hiç çalıştırılmaz. Çalışma zamanı hatası ise program derlenip çalışmaya başladıktan sonra ortaya çıkar; sıfıra bölme, dizi sınırının aşılması ya da tür uyuşmazlığı bu türdendir. Mantık hatası hiçbir aşamada programı durdurmaz, yalnızca hesaplanan sonucun beklenenden sapmasına yol açar.

Belirti ile neden ayrımı bu konunun ikinci temel kavramıdır. Belirti, ekranda gördüğümüz sonuçtur; neden ise o sonucu doğuran karardır. Bir fonksiyon yanlış değer döndürdüğü için ekranda hatalı bilgi görünür, ancak asıl düzeltilmesi gereken yer o değerin hesaplandığı satırdır. Kapsam hatası, sıra hatası ve sınır hatası da bu üç ana sınıfın altında değerlendirilir.

3. Basit Örnek ve Adım Adım Çözüm

Bir dizideki sayıların toplamını hesaplayan döngüde sayaç, dizi uzunluğu kadar artıyorsa son turda dizinin dışındaki bir konuma erişilir. Bu hatanın bulunması için izleme tablosu hazırlayalım. Tabloyu doldururken son sütunun boş kaldığını ve toplamın beklenmedik büyüdüğünü görürüz.

  1. Adım 1: Her tur için sayaç değerini, dizi elemanını ve toplamın yeni değerini tabloya yazın.
  2. Adım 2: Doldurduğunuz tabloya bakın ve hangi turda değerlerin beklentiyi bozduğunu bulun.
  3. Adım 3: Hatanın döngünün üst sınırında olduğunu tespit edin, sınırı uzunluk eksi bir yapın.
  4. Adım 4: Tabloyu yeniden doldurun ve toplamın beklendiği gibi çıktığını doğrulayın.

Düzeltme sonrası toplam beklendiği gibi çıkar. Dikkat edilecek nokta şudur: sınırı yalnızca bu döngüde değiştirmek yeterli olmayabilir. Aynı desen programın başka yerlerinde de varsa kök neden ortadan kaldırılmalıdır; aksi hâlde hata başka bir ekranda yeniden belirir.

4. İleri Örnek ve Saha Uygulaması

Bir atölyede üretilen parçaların sayısını tutan bir program düşünelim. Parça sayacı her üretimde bir artırılır, gün sonunda toplam ekrana yazdırılır. Programcı sayacı artırma satırını koşulun altına yazdığı için sayaç hiç artmaz ve toplam hep sıfır kalır. Program çalışır, hata mesajı vermez, yalnızca yanlış rapor üretir. Bu tam anlamıyla bir mantık hatasıdır.

Saha uygulamasında denetim şu sırayla yürütülür: önce beklenen sonuç kâğıda yazılır, sonra program çalıştırılır ve sonuçlar karşılaştırılır. Fark çıktığında sayaç değeri her üretim adımında yazdırılarak hatanın hangi adımda oluştuğu bulunur. Sonuçta düzeltme yapılır ve önceki tüm sınamalar yeniden yürütülür.

5. Karşılaştırma Tablosu ve Denetim

Aşağıdaki tablolar hata türlerinin oluşma anını ve denetimde kullanılan yöntemleri özetler. Tabloyu kendiniz doldurarak sınav hazırlığı yapabilirsiniz.

Hata türüOluşma anıProgramın durumuFark etme yolu
Sözdizimi hatasıDerleme sırasındaProgram başlamazDerleyici kuralı ve satırı bildirir
Çalışma zamanı hatasıÇalışma sırasındaProgram dururHata mesajı ve çağrı adresi
Mantık hatasıÇalışma sırasındaProgram sürerYalnızca sınama sonucuyla
Kapsam hatasıDerleme sırasındaProgram başlamazTanımsız değişken uyarısı
Sıra hatasıÇalışma sırasındaProgram sürerSonuç beklenenden farklı çıkar
Denetim yöntemiNe yaparSağladığı yarar
Adım adım yürütmeProgramı satır satır çalıştırırHatalı adım doğrudan görülür
Değişken izlemeDeğişkenlerin anlık değerini gösterirKök neden hızla saptanır
İzleme tablosuDeğişken değerlerini kâğıda yazarProgram dışında da izlenebilir
Değer yazdırmaAra değerleri ekrana basarEk araç gerekmez
Kod okumaBlokları satır satır incelerDikkat hataları yakalanır
Yeniden sınamaTüm sınamaları tekrar yürütürYan etkiler ortaya çıkar

Denetimde sıra önemlidir. Önce hatanın oluştuğu kapsamı daraltmak, sonra kök nedeni araştırmak, en sonra düzeltmeyi yapmak gerekir. Bu sırayı tersine çevirmek, saatler harcamak demektir.

6. Sık Yapılan Hatalar, Özet ve Kendini Dene

Sık yapılan ilk hata, ekranda görülen belirtiyi doğrudan düzeltmeye çalışmaktır. İkinci hata, sözdizimi hatası ile mantık hatasını aynı sanmaktır. Üçüncü hata ise düzeltme sonrası sınamaları tekrarlamamaktır. Bu üç alışkanlıktan vazgeçildiğinde hata bulma süresi belirgin biçimde kısalır.

Özetle hata bulma, belirtiden yola çıkıp kök nedene ulaşmayı gerektiren bir süreçtir. Hata türünü doğru tanımak arama alanını yarıya indirir. Değişken değerlerini yazdırmak ve adım adım yürümek, kök nedeni bulmanın en hızlı yoludur. Düzeltme sonrası yeniden sınama ise çözümün kalıcı olmasını sağlar.

Kendini dene: elindeki bir programda hatanın çıktısını önce kâğıda yaz, sonra programı çalıştırıp karşılaştır. Ardından hatanın oluştuğu adımı bul ve yalnızca o adımda değişken değerlerini yazdırarak izlemeyi sürdür.

Hata Bulma ve Kod Denetimi — Sık Sorulan Sorular

Hata Bulma ve Kod Denetimi nedir?

Bir programı yazmak ile o programı ayıklama arasındaki fark ilk bakışta önemsiz görünür. Oysa öğrencilerin en çok zorlandığı iş, hatanın kendisini bulup kök nedeni düzeltmektir. Bu konuda üç hata türünü ayırt etmeyi, hatayı adım adım izleyerek bulmayı ve düzeltilen kodun başka bir yerde sorun çıkarmadığını sınamayı…

Hata Bulma ve Kod Denetimi konusunda ne öğrenilir?

Sözdizimi hatası derlemeyi engeller, bu yüzden programın hiçbir satırı çalışmaz.

Hata Bulma ve Kod Denetimi konusunda sık yapılan hatalar nelerdir?

Yalnızca ekran çıktısına bakmak: Ekranda görülen belirtiyi düzeltmek yerine değeri üreten satırı düzeltmek gerekir, aksi hâlde hata başka bir girişte yeniden ortaya çıkar. Sözdizimi ile mantık hatasını karıştırmak: Derleme aşamasında bildirilen hata ile yalnızca sonucu bozan hata farklıdır; ilki programı başlatmaz…

Hata Bulma ve Kod Denetimi için hangi formüller ve kurallar kullanılır?

Sözdizimi hatası kural dışı bir yazımdan doğar ve derlemeyi engeller. · Çalışma zamanı hatası program çalışırken ortaya çıkar ve onu durdurur. · Mantık hatası programı durdurmaz, yalnızca hesaplanan sonucu bozar. · Bir dizinin geçerli indeks aralığı sıfırdan uzunluk eksi bire kadardır.

Hata Bulma ve Kod Denetimi kazanımları nelerdir?

Hata türlerini sözdizimi, çalışma zamanı ve mantık olarak ayırt eder. Bir programı adım adım çalıştırarak hatalı satırı belirler. Değişken değerlerini yazdırarak hatanın oluştuğu adımı tespit eder.

Hata Bulma ve Kod Denetimi Kazanımları

Örnek Sorular ve Çözümleri

Örnek Soru 1 kolay

Sözdizimi (syntax) hatası nedir?

  1. A) Kurala uymayan bir yazım nedeniyle programın derlenmesini engelleyen hatadır
  2. B) Program çalışırken sıfıra bölme sonucu oluşan hatadır
  3. C) Programı durdurmadan yalnızca hesaplanan sonucu bozan hatadır
  4. D) Kullanıcının girdiği değeri okurken oluşan hatadır
Cevabı göster

Doğru cevap: A) Kurala uymayan bir yazım nedeniyle programın derlenmesini engelleyen hatadır

Kurala uymayan bir kavramı Hata Bulma ve Kod Denetimi konusunun temel bir kavramıdır. Detaylar konu anlatımında verilmiştir.

Örnek Soru 2 orta

Bir programda sıfıra bölme işlemi yapılması hangi tür hataya yol açar?

  1. A) Çalışma zamanı hatası
  2. B) Sözdizimi hatası
  3. C) Mantık hatası
  4. D) Grafik hatası
Cevabı göster

Doğru cevap: A) Çalışma zamanı hatası

Program derlenir, ancak bölme işlemi yapıldığı anda tanımı bulunmayan bir değer üretilir ve çalışma anında durdurulur.

Örnek Soru 3 zor

Bir dizide 12 eleman vardır. Dizinin ilk elemanının indeksi 0 olduğuna göre son elemanın indeksi kaçtır?

  1. A) 12
  2. B) 10
  3. C) 13
  4. D) 11
Cevabı göster

Doğru cevap: D) 11

On iki elemanlı bir dizide geçerli indeksler sıfırdan 11'e kadar sıralanır, bu yüzden son elemanın indeksi 11 olur.

Sıradaki adım

Konu anlatımları hesapsız okunur. Quiz, slayt ve deneme için hesap gerekir.

DersTeders ile devam et

Bilişim Teknolojileri için çalışma yolu

  1. OkuKonu anlatımını bu sayfada bitir.
  2. Soru çözÖrnekleri çöz, cevabı açıklamayla karşılaştır.
  3. Quiz ile pekiştirHesapla kendini ölç.

Slaytla adım adım öğren · Tüm dersler · Ana sayfa

Hesap açTüm dersleri keşfet

Konu anlatımları hesapsız okunur; quiz, slayt ve deneme için hesap gerekir.

Bu sayfa Hata Bulma ve Kod Denetimi konusunun anlatımını, kazanımlarını ve örnek sorularını içerir. Konuyla ilgili tüm sorular için testi çöz, diğer konular için DersTeders ana sayfasına geçebilirsin.

Bu konunun öğretmen materyallerini (ders planı, çalışma kâğıdı, çözümlü soru bankası, rubrik) yazdırabilirsin: Yazıcı çıktısı modülünü aç