GLITCH CITY:
OYUN TAMİR EKİBİ

GÖREV: HATALI KODLARI DÜZELTMEK

HAFTA 23: HATA AYIKLAMA (DEBUGGING)

OYUN BOZULDU! (İÇERİK)

  • Bug (Böcek) Nedir?
  • Debugging (Hata Ayıklama) Nedir?
  • Hata Türleri (Sözdizimi, Mantık)
  • Senaryo 1: Duvara Çarpan Karakter
  • Senaryo 2: Sonsuz Döngü
  • Masa Başı İzleme (Tracing)
  • Girişimcilik Haftası
  • Dünya Kadınlar Günü: Ada Lovelace
Glitch Screen

BUG (BÖCEK) NEDİR?

Yazılımdaki hatalara BUG (Böcek) denir.


Neden Böcek?

1947'de ilk bilgisayarlardan birinin içine gerçek bir güve girmiş ve sistemi bozmuştu. Grace Hopper onu buldu ve o günden beri hatalara "Bug" diyoruz.

DEBUGGING (HATA AYIKLAMA)

Hataları bulup düzeltme işlemidir. Bir dedektif gibi kodları incelememiz gerekir.

1. BUL

Hata nerede? Hangi satırda?

2. ANLA

Neden hata verdi?

3. DÜZELT

Doğru kodu yaz.

1. SÖZ DİZİMİ HATASI (SYNTAX ERROR)

Yazım yanlışıdır. Bilgisayar komutu anlamaz.

gitİleri();
(Yanlış yazım, Türkçe karakter hatası vb.)
ileriGit();
(Doğru komut)
Matrix Code

2. MANTIK HATASI (LOGIC ERROR)

Program çalışır ama sonuç yanlıştır. En zor bulunan hatadır.


Örnek: Robotun sağa dönmesi gerekirken sola dönmesi. Kod doğru yazılmıştır ama yön yanlıştır.

SENARYO 1: DUVARA ÇARPAN KARAKTER

Oyun karakterimiz labirentte çıkışa gitmek yerine duvara çarpıyor.

HATALI KOD:
1. İleri Git
2. İleri Git
3. İleri Git (Burada duvar var!)
4. Sağa Dön
DÜZELTİLMİŞ KOD:
1. İleri Git
2. İleri Git
3. Sağa Dön (Erken dönmeli)
4. İleri Git

SENARYO 2: SONSUZ DÖNGÜ (INFINITE LOOP)

Oyun dondu! Karakter olduğu yerde dönüp duruyor.

Hata: "Hedefe varana kadar dön" komutu verilmiş ama karakter hiç ilerlemiyor.

🔄 🔄 🔄

Çözüm: Döngünün içine "İlerle" komutu eklenmeli.

MASA BAŞI İZLEME (TRACE TABLE)

Bilgisayarı kullanmadan, kodu kağıt üzerinde adım adım çalıştırıp değişkenlerin değerini takip etmektir.


ADIMPUAN (Değişken)İŞLEM
10Başlangıç
210Altın Topla (+10)
35Canavara Çarp (-5)
415Altın Topla (+10)

SENARYO 3: YANLIŞ HESAP

Market uygulamasında 2 elma (5 TL) ve 1 ekmek (10 TL) aldık. Sonuç 510 TL çıktı! Neden?


Toplam = "5" + "10"
(Metin olarak toplamış)

Düzeltme: Veri türlerini sayıya çevirmeliyiz.

Toplam = 5 + 10 = 15 TL

DEBUGGING İPUÇLARI

SESLİ OKU

Kodu satır satır sesli oku. Bazen hatayı kulağınla duyarsın.

ÖRDEK TEKNİĞİ

(Rubber Ducking): Bir oyuncağa problemi anlat. Anlatırken çözümü bulursun.

PARÇALA

Kodu bölümlere ayır ve her bölümü ayrı ayrı test et.

HATA MESAJLARINI OKUMAK

Bilgisayar hata verdiğinde korkma! O mesaj sana ipucu verir.


Error on line 12: Missing ';'
(12. satırda hata var: Noktalı virgül eksik)

Dedektif gibi satır numarasına git ve düzelt.

GİRİŞİMCİLİK HAFTASI

(Mart Ayının İlk Haftası)

Bir problemi fark edip, ona teknolojik bir çözüm üretmek ve bunu hayata geçirmek Bilişim Girişimciliğidir.

Örn: Yemeksepeti, Getir, Trendyol.

Woman Tech

8 MART DÜNYA KADINLAR GÜNÜ

ADA LOVELACE

Tarihteki İLK BİLGİSAYAR PROGRAMCISI bir kadındır.

1800'lü yıllarda, daha bilgisayarlar icat edilmeden algoritmalar yazmıştır.

OYUN TESTİ 1

Yazılımdaki hatalara ne ad verilir?

A) Virüs
B) Bug (Böcek)
C) Spam
D) Link

OYUN TESTİ 2

Kodun yanlış yazılmasından kaynaklanan (bilgisayarın anlamadığı) hata türü hangisidir?

A) Söz Dizimi (Syntax) Hatası
B) Mantık Hatası
C) Donanım Hatası
D) Kullanıcı Hatası

OYUN TESTİ 3

Kodun çalışıp yanlış sonuç vermesi (Örn: Yanlış hesaplama) hangi hata türüdür?

A) Söz Dizimi Hatası
B) Sistem Hatası
C) Mantık Hatası
D) Ekran Hatası

OYUN TESTİ 4

İlk bilgisayar programcısı kabul edilen kişi kimdir?

A) Bill Gates
B) Steve Jobs
C) Ada Lovelace
D) Mark Zuckerberg

BUG AVI!

Programming Code

Görev: Aşağıdaki algoritmadaki hatayı bul.

Kek Yapma Algoritması:
1. Yumurtaları kır.
2. Fırına koy.
3. Çırp.
4. Pişir.

Hata: Çırpmadan fırına koyarsan kek olmaz!

SKOR TABLOSU (ÖZET)

BUG

Yazılım hatası.

DEBUG

Hatayı düzeltme.

TRACE

Adım adım izleme.

OYUN TAMİR EDİLDİ!

Harika iş çıkardın!


Gelecek Hafta: "Benzer Problemler ve Genelleme"