
Yapay zeka kullanımı, kod inceleme ve refaktör süreçlerini hızlandırmak ve tekrarlayan görevleri azaltmak amacıyla giderek daha sık tercih ediliyor. Modeller; rutin çekme istekleri, stil denetimleri ve hataları tespit etme gibi görevlerde geliştiricilere yardımcı olabiliyor. Örneğin OpenAI'ın Codex, yazılımcılara kod tamamlama ve yeniden yapılandırma gibi görevlerde destek olacak şekilde tasarlanmıştır (OpenAI Codex).
Benzer biçimde, Microsoft'un yapay zeka destekli uygulama ve kod değerlendirme araçları da özellikle .NET modernizasyonu gibi senaryolarda kodu analiz ederek performans, güvenlik ve okunabilirlik gibi kriterlere göre öneriler sunmaktadır (Microsoft Learn).
Bu dosyayı incele: [dosya içeriği]. Dikkat et: stil, değişken isimlendirmesi, fonksiyon karmaşıklığı ve potansiyel hata noktaları. Önce 3 maddelik kısa bir özet ver, sonra bulunan her sorun için: dosya, satır aralığı, tür (stil/okunabilirlik/hata), öneri (en fazla 2 cümle) ve gerekliyse küçük bir kod önerisi ekle.
Belirtilen kodda kod kokusu (code smell) veya gereksiz tekrar var mı? Bulguları öncelik sırasına göre (high/medium/low) listele ve her biri için uygulanabilir bir düzeltme önerisi sun.
Verilen kod parçacığını güvenlik açısından tara: giriş doğrulama, SQL enjeksiyonu, açık anahtar sızması, yetkilendirme boşlukları gibi alanları kontrol et. Her bulgu için açıklama, risk seviyesi (high/medium/low) ve önerilen yama adımlarını ver.
Bu fonksiyonun performansını analiz et. Olası darboğazları belirle, zaman/uzay karmaşıklığını kısaca değerlendir ve en az iki alternatif iyileştirme öner.
Verilen git diff veya dosya için kapsamlı bir refaktör önerisi hazırla: fonksiyon ayırma, tekrarları azaltma, isimlendirme iyileştirme. Her öneri için beklenen faydayı (ör. okunabilirlik, test edilebilirlik) kısaca açıkla ve küçük kod transformasyonu örneği ver.
Bu sınıfı SOLID prensiplerine göre değerlendir ve hangi prensiplerin ihlal edildiğini göster. Her ihlal için kısa bir düzeltme planı sun.
Verilen fonksiyon için unit testler üret. Test adlarını, girişleri ve beklenen sonuçları belirt. Testleri birim testi çerçevesine (ör. xUnit, pytest) uygun şekilde yapılandır.
Bir hata raporu temelinde yeniden üretilebilir adımlar yaz, hangi girdi/çevre koşullarında hatanın tetikleneceğini netleştir ve önerilen ilk debug adımlarını sırala.
Kullanım senaryosu: Bir PR açıldı ve otomatik yorum olarak AI öneri eklemek istiyoruz. Aşağıdaki promptu PR botuna verin:
"PR #123: Değişiklikleri incele. İçerik: [dosya listesi + diff]. Hangi parçalar fonksiyonel değişikliğe yol açıyor, hangi parçalar sadece stil değişikliği? Her fonksiyonel değişiklik için regresyon riski (high/medium/low), gerekli testler ve önerilen ek unit testler listesini ver. Ayrıca 5 maddelik kısa bir özet hazırla ve kritik güvenlik veya performans riski varsa açıkla."
Beklenen çıktı formatı örneği:
Uygulama adımları (örnek):
Yapay zeka destekli kod inceleme ve refaktör promptları, geliştiricilerin üretkenliğini artırmak ve tekrarlayan işleri azaltmak için güçlü bir yardımcı olabilir. OpenAI Codex gibi modeller ve Microsoft'un AI destekli değerlendirme araçları, analiz ve öneri süreçlerini hızlandırmaya uygundur; yine de her zaman insan denetimi, test ve güvenlik kontrolü gereklidir (OpenAI Codex, Microsoft Learn).
Kaynaklar ve daha fazla okuma:
Microsoft Learn — AI destekli uygulama ve kod değerlendirme araçları
Yorumlar