Giriş

Yapay zekâ tabanlı asistanlar, kod tamamlama ve hata ayıklama iş akışlarını hızlandırmak için yaygın şekilde kullanılıyor. Bu rehberde geliştiriciler için kullanılabilir, uygulamaya hazır prompt şablonları; şablonların nasıl yapılandırılacağı, hangi bağlamın sağlanacağı ve sonuçların nasıl doğrulanacağı anlatılıyor. Aşağıdaki yaklaşımlar genel en iyi uygulamalara dayanır ve mevcut açık kaynaklı prompt kütüphanelerinden esinlenmiştir.

Neden prompt şablonları kullanmalı?

Tekrarlanabilir ve iyi tanımlanmış prompt şablonları şu avantajları sağlar: çıktı tutarlılığı, hızlı iterasyon, kod kalitesinin artmasına destek ve ekip içi paylaşılabilirlik. Açık kaynak kütüphaneler, farklı görevler için hazır şablonları kategorize ederek işe başlamayı kolaylaştırır; örneğin PromptIndex çeşitli kod inceleme, hata ayıklama, refaktoring ve dokümantasyon şablonları sunar.

İyi bir geliştirici promptunun temel bileşenleri

  • Bağlam (Context): İlgili dosya içeriği, fonksiyon imzası, bağımlılıklar ve ortam bilgisi.
  • Açık görev tanımı (Task): Ne yapılmasını istediğinizi net şekilde belirtin (ör. "Bu fonksiyondaki hatayı bulun ve minimal patch verin").
  • Girdi/çıktı formatı: Döndürülecek format; sadece kod mu, yoksa kod + kısa açıklama mı gerektiği.
  • Kısıtlar: Yeni bağımlılık eklenmesin, API değişmesin gibi sınırlar.
  • Doğrulama talimatı: Hangi unit testlerin çalışması gerektiği veya hangi edge-case'lerin kontrol edileceği.
  • Örnekler: İstenen çıktıya benzer 1–2 örnek (input→expected output).

Kod tamamlama için örnek şablon

Şablon (kısaltılmış):

Bağlam: [dosya içeriği veya fonksiyon açıklaması].
Görev: Eksik veya yarım bırakılmış fonksiyonu tamamla. Sadece çalışır durumda kod ver. Kısa (2–3 cümle) açıklama ekle.
Format: Yalnızca kod bloğu, ardından tek paragraf açıklama.
Kısıtlar: Yeni üçüncü taraf paket ekleme yok; API imzasını koru.
Doğrulama: Aşağıdaki unit testleri geçmeli: [test1, test2].

  1. Bağlamı modelin anlayacağı şekilde kısaltın (gerekirse dosyayı bölün).
  2. Modelden sadece diff veya yalnızca fonksiyon isteyin; gereksiz yorumları sınırlandırın.
  3. Çıktıyı yerel test ortamında çalıştırın.

Hata ayıklama (debugging) şablonu

Şablon (kısaltılmış):

Girdi: Hata mesajı, ilgili kod parçacığı (5–20 satır), beklenen davranış ve yeniden üretme adımları.
Görev: Hatanın olası nedenlerini önceliklendirilmiş şekilde listele (en olası 3 neden). Her neden için kısa çözüm önerisi ve gerekiyorsa minimal patch ver. Her bir öneri için nasıl doğrulanacağını (adım) belirt.

  1. Hata mesajını ve stack trace'i açıkça ekleyin.
  2. Modelden, değişiklikleri minimal diff formatında vermesini isteyin (ör. sadece değişen satırlar).
  3. Önerilen düzeltmeyi yerel olarak test edin ve bir code review yapın.

Unit test üretimi şablonu

Şablon (kısaltılmış):

Bağlam: Fonksiyon imzası, açıklama, örnek girdiler ve beklenen çıkışlar.
Görev: Bu fonksiyon için pytest/unittest formatında 5 mantıklı test üret. Her testin amacı kısa açıklama ile verilsin. Riskli edge-case'ler ve yanlış kullanım örnekleri dahil edilsin.

Refactor isteme şablonu

Şablon (kısaltılmış):

Bağlam: Hedef dosya veya fonksiyon, istenen hedef (örn. daha okunabilir, DRY uygulanmış), mevcut test kapsama oranı.
Görev: Refactor önerileri sun; gerekli değişiklikleri minimal patch şeklinde ver. Değişiklik sonrası hangi testlerin eklenmesi gerektiğini belirt.

Refaktoring ve kod okunabilirliği için örnek şablon ve ilkeler PromptItin üzerinde örneklenmiştir; bu tür şablonlar tek sorumluluk ve DRY prensiplerini açıkça belirtir.

Gerçek dünya örneği: küçük bir hata düzeltme akışı

Senaryo: Bir Python fonksiyonu beklenen şekilde toplama yapmıyor. Örnek kod (özet): def add(a, b): return a - b.

Örnek prompt (kısaltılmış):

"Bağlam: add fonksiyonunun amacı iki sayıyı toplamak. Mevcut kod: def add(a, b): return a - b. Beklenen davranış: 2 + 3 = 5. Görev: Hatanın nedenini belirt ve minimal patch ver. Ayrıca fonksiyon için en az 2 unit test oluştur."

Beklenen süreç: model muhtemel açıklamayı (örn. yanlış operatör kullanımı), düzeltilmiş kodu ve testleri üretir. Burada kritik nokta: üretimi doğrudan deploy etmek değil; öneriyi yerel testlerde çalıştırmak ve insan onayıyla merge etmektir.

En iyi uygulamalar ve kontrol listesi

  • Sürümlenebilir şablonlar oluşturun: prompt'ları reposunuzda saklayın ve değişiklikleri takip edin.
  • Küçük adımlarla ilerleyin: tek seferde küçük görevler vermek daha güvenilir sonuç üretir.
  • Her değişiklik için otomatik test isteyin ve test listesini modele verin.
  • Modelden minimal diff veya patch formatı isteyin; tüm dosyayı yeniden yazdırmayın.
  • Iteratif yaklaşın: ilk öneriyi düzeltme/iyileştirme isteyerek birden çok adımda sonuç alın.
  • Son kararı insan verin: otomatik öneriler kod kalitesini artırsa da insan incelemesi zorunludur.

Güvenlik, gizlilik ve doğrulama

  • Hassas verileri (API anahtarları, şifreler, gizli konfigürasyonlar) prompt içinde paylaşmayın.
  • Üretilen kod güvenlik taramasından geçirilmeli; otomatik güvenlik analiz araçları ve manuel inceleme birlikte kullanılmalı.
  • Modelin önerilerini test ortamında çalıştırın; üretime doğrudan merge etmeyin.

Entegrasyon: otomasyon ve CI önerileri

  1. CI pipeline'ında otomatik test jenerasyonu ve çalıştırma adımları ekleyin.
  2. Model çıktısını bir PR taslağı olarak oluşturup, diffları review sürecine dahil edin.
  3. Önerileri takib etmek için prompt kullanım metrikleri ve kalite notları kaydedin.

Kaynaklar ve daha fazla okuma


Bu rehberde verilen şablonlar ve öneriler, pratik kullanım içindir. Hangi modelin ve konfigürasyonun en iyi sonucu verdiği projeden projeye değişebilir; sistematik test ve insan incelemesi her zaman gereklidir.