İçeriğe geç

Akıllı Düzeltme

Akıllı Düzeltme, kodundaki hataları bulup düzeltir ve ne yaptığını Türkçe bir raporla anlatır. Tamamen bilgisayarında çalışır; internete ya da bir yapay zekâ hizmetine bağlanmaz.

Açmak için: araç çubuğundaki sihirli değnek simgesi ya da Araçlar → Düzelt.

Şu kodda iki hata var: 1. satırda : eksik, 5. satırda parantez kapanmamış.

fonksiyon topla(a, b)
döndür a + b
sayi = girdi_al("Bir sayı gir: ")
yazdır(topla(sayi, 5)
Hatalı kod editörde; durum çubuğunda 'Satır 1: ':' bekleniyor'

sihirli değnek düğmesine basınca birkaç saniye içinde rapor açılır:

Akıllı Düzeltme Raporu: 2 düzeltme (eksik ':' ve kapanmamış parantez), kod sağlığı ve güven yüzdeleri, bir uyarı
Akıllı Düzeltme Raporu

Motor iki hatayı düzeltti, ama bir sorun daha olduğunu da söyledi: girdi_al() her zaman metin döndürür, bu yüzden metinle sayıyı toplamaya çalışan a + b çalışırken Veri Tipi Hatası verir. Bunu kendi kararına bırakır: sayı istiyorsan girdiyi tamsayı(girdi_al(...)) ile sayıya çevirmelisin.

Düzeltme yedi aşamada yapılır: okuma → ön temizlik → sözdizimi → anlam → çalışma → gözden geçirme → rapor.

  • Ön temizlik: sekme/boşluk karışıklığı, ayrı yazılmış anahtar kelimeler (değilse eğer → değilse_eğer), sözlüğe göre yanlış yazılmış TürKod kelimeleri.
  • Sözdizimi: eksik :, yanlış girinti, kapanmamış ya da fazla parantez ve tırnaklar, eksik virgüller, hatalı operatörler, unutulmuş çağrı parantezleri, “akıllı” tırnaklar (“ ”), f-string süslü parantezleri.
  • Anlam: örneğin girdi_al() ile alınan metni sayı gibi kullanmak.
  • Çalışma hataları: tanımsız adlar, eksik içe_aktar satırları, metin + sayı toplama, yanlış metot adı, eksik kendisi / küresel, liste indeks, sözlük anahtar, sıfıra bölme ve sonsuz özyineleme hataları. Her düzeltme kod yeniden çalıştırılarak doğrulanır.
  • Gözden geçirme (yalnızca uyarı): sonsuz döngü riski, hiç çalışmayacak kod, yanlış sayıda argüman, kullanılmayan değişkenler.

Düzeltmeyi doğrulamak için kod denenerek çalıştırılır. Kodun dosya silme, internete bağlanma, başka program çalıştırma gibi riskli işler yapabiliyorsa (örn. os, shutil, subprocess, requests, eval, yazma kipinde aç) önce sorulur:

  • Çalıştırmadan düzelt (varsayılan) — yalnızca yazım ve sözdizimi hataları düzeltilir.
  • Çalıştırarak düzelt — çalışma hataları da bulunur.
  • Vazgeç
os modülünü kullanan kodda Kod çalıştırılsın mı? penceresi: dosya/klasör silme, komut çalıştırma (os)
Kod os modülünü kullandığı için önce izin isteniyor.

Deneme çalıştırmaları geçici bir klasörde, zaman sınırıyla yapılır.

Düzeltme sırasında motorun ne düşündüğünü canlı izlersin. Bittiğinde Akıllı Düzeltme Raporu açılır:

  • Özet cümlesi ve varsa Kalan hata
  • Kod sağlığı % ve Güven % çubukları, süre ve test çalıştırması sayısı
  • Yaptığım düzeltmeler — her biri güven yüzdesi ve tıklanabilir Satır N etiketiyle (tıklayınca o satıra gidersin)
  • Öneriler ve uyarılar — otomatik düzeltilmeyen ama bilmen gereken şeyler, 💡 önerisiyle
  • Düşünce sürecini göster — motorun adım adım ne denediği
Düşünce süreci açık: kodu okuyorum, sözdizimi hatalarını çözüyorum, Satır 3 : bekleniyordu, 2 olası çözümü denedim, kodu güvenli kipte çalıştırıyorum, bitti
Motor eksik ':' için iki çözüm denedi, en iyisini seçti ve kodu çalıştırarak doğruladı.
  • Kod farklarını göster — orijinal ve düzeltilmiş kodu karşılaştırır
Raporda 'Farkları gizle' açık; Orijinal ve Düzeltilmiş kod farkları görünüyor
Kod farklarını göster: --- Orijinal / +++ Düzeltilmiş

Alttaki düğmeler:

  • Uygula — editördeki kodu düzeltilmiş haliyle değiştirir (geri almak için Ctrl+Z).
  • Yeni Sekmede Aç — düzeltilmiş kodu yeni sekmede açar, orijinaline dokunmaz.
  • Reddet — hiçbir şeyi değiştirmeden kapatır.

Ayarlar → Düzeltme bölümünden deneme çalıştırmalarının Zaman Aşımı (varsayılan 5 sn), Mesaj Aralığı (canlı mesajlar arası bekleme, varsayılan 100 ms) ve Maksimum Döngü Sayısı (varsayılan 12) değiştirilebilir. Gelişmiş düzeltme her zaman açıktır, kapatılamaz.