23 puan yazan GN⁺ 2025-06-06 | Henüz yorum yok. | WhatsApp'ta paylaş
  • Yapay zeka kodlama yardımcıları bir projenin niyetini kendiliğinden bilemez; bu yüzden sonuç kalitesi, geliştiricinin bağlamı, hedefleri ve örnekleri ne kadar iyi verdiğine bağlı olarak büyük ölçüde değişir
  • Hata ayıklamada yalnızca kodu ve hatayı vermek yerine beklenen davranışı, gerçek davranışı ve çalışma ortamını birlikte sunmalı; satır satır izleme veya minimum yeniden üretilebilir örnekle sorunun kapsamı daraltılmalıdır
  • Refactoring ve optimizasyon için “daha iyi yap” demek yerine tekrarları kaldırma, paralel işleme, hata yönetimini koruma, sürüm kısıtları gibi başarı kriterleri açıkça belirtilmelidir
  • Yeni özellik geliştirmede işin tamamını tek seferde devretmek yerine plan, iskelet, durum yönetimi, API entegrasyonu ve edge case’leri küçük adımlara bölüp gözden geçirerek genişletmek daha güvenlidir
  • Muğlak sorular, aşırı kapsamlı istekler, soru içermeyen kod yığınları ve belirsiz referanslar sonuçları oynatır; yapay zeka tek seferlik bir üretici değil, tekrarlı diyalogla çalışan bir pair programmer olarak ele alınmalıdır

Yapay zeka kodlama yardımcılarını iyi kullanmak için temel ilkeler

  • Yapay zeka kodlama yardımcıları fonksiyon otomatik tamamlama, hata düzeltme önerileri, modül ya da MVP oluşturma gibi işlerde yardımcı olabilir; ancak projenin somut niyeti, kullanıcının sağladığı bilgilere dayanır
  • İyi bir prompt, yapay zekayı “söyleneni harfi harfine alan bir işbirlikçi” gibi ele alır ve istenen sonucu ve formatı açıkça tarif eder
  • Temel ilkeler şunlardır
    • Zengin bağlam sağlama: Dil, framework, kütüphane, ilgili fonksiyonlar veya kod parçaları, kesin hata mesajı ve beklenen davranış dahil edilir
    • Hedefi somutlaştırma: “Neden çalışmıyor?” yerine “Bu JavaScript fonksiyonunun beklenen değer yerine neden undefined döndürdüğü ve nasıl düzeltileceği” gibi soru daraltılır
    • Karmaşık işleri parçalama: Büyük bir özelliği tek seferde istemek yerine React component iskeleti oluşturma, durum yönetimi ekleme, API çağrısını entegre etme gibi adımlarla ilerlenir
    • Girdi/çıktı örnekleri sağlama: [3,1,4] girdisinin [1,3,4] döndürmesi gerektiği türünden örnekler, gereksinimlerdeki belirsizliği azaltır
    • Rol verme: “senior React developer”, “JavaScript performance expert”, “code reviewer” gibi roller vermek yanıtın derinliğini ve tarzını ayarlayabilir
    • Yineleme ve düzeltme: İlk yanıt uygun değilse özyineleme yerine döngü kullanma, değişken adlarını iyileştirme, yorum ekleme gibi takip istekleriyle yön ayarlanır
    • Kod açıklığını koruma: Anlamlı fonksiyon ve değişken adları, tutarlı format, yorumlar ve docstring’ler, yapay zekanın kodun niyetini anlaması için ipucu olur

Hata ayıklama prompt kalıpları

  • Hata ayıklama isteklerinde kodun ne yapması gerektiği, gerçekte neyin yanlış olduğu ve hangi hatanın oluştuğu birlikte yer almalıdır
  • İyi bir hata ayıklama prompt’u genellikle şu bilgileri içerir
    • Kullanılan dil ve çalışma ortamı
    • Sorunlu kod
    • Kesin hata mesajı veya hatalı çıktı
    • Beklenen çıktı
    • Örnek girdi
    • Daha önce denenmiş yöntemler
  • Karmaşık mantık hatalarında yapay zekadan satır satır yürütme izleme isteyerek durum değişimlerini takip etmesi sağlanabilir
    • Örn: “Bu fonksiyonda total değerinin her adımda nasıl değiştiğini izle ve birikimin nerede yanlış gittiğini bul”
  • Kod tabanı büyük olsa bile hatayı yeniden üreten küçük bir kod parçası oluşturabiliyorsanız bunu minimum yeniden üretilebilir örnek olarak sunmak daha iyidir
  • İlk yanıt yalnızca kısmen yararlıysa “Düzeltilmiş kodu göster”, “Bu değişikliğin sorunu neden çözdüğünü açıkla” gibi takip sorularıyla devam edilebilir

Hata ayıklama örneği: muğlak soru ve iyileştirilmiş soru

  • Örnek kod, mapUsersById(users) fonksiyonunun kullanıcı dizisini ID tabanlı bir nesneye dönüştürmeye çalıştığı bir Node.js/JavaScript fonksiyonudur
  • Hata `for (let i = 0; i

Henüz yorum yok.

Henüz yorum yok.