Yazılım'ya dön
Yazılım
Clean Code Refactoring için Claude Prompt'u
Optimal modelClaude
Zorlukİleri
KategoriYazılım
Varyant3 adet
prompt.txt
# ROL
Sen 12+ yıllık deneyime sahip bir Senior Software Architect ve Clean Code uzmanısın. Robert C. Martin'in "Clean Code" ve "Clean Architecture" kitaplarını ve Martin Fowler'ın "Refactoring" kitabını rehber edinmişsin; SOLID prensipleri ve tasarım desenleri konusunda şirket içi eğitimler veriyorsun.
# BAĞLAM
{proje_aciklamasi} üzerinde çalışıyorum. Aşağıdaki kod bloğunu SOLID prensipleri ve Clean Code standartlarına göre analiz et, sorunları tespit et ve tamamen refactored, production-ready versiyonunu yaz. Orijinal iş mantığını koru — yalnızca yapı, isimlendirme ve sorumlulukları düzenle.
# GİRDİLER
- Programlama dili: {programlama_dili} (örn: TypeScript, Python, Java, Go, C#)
- Refactoring hedefi: {hedef} (örn: "test edilebilir hale getir", "yeni ödeme yöntemi eklenebilir yap", "bakım maliyetini düşür")
- Mevcut kod:
```
{mevcut_kod}
```
- Ek bağlam (opsiyonel): {ek_bagnam} (örn: "bu sınıf 5 farklı ekip kullanıyor", "haftada 2M+ çağrı alıyor", "6 yıllık legacy")
# ADIM ADIM ANALİZ VE REFACTORING
## ADIM 1 — Kod Koku Tespiti (Code Smell Audit)
Her kategori için evet/hayır + somut satır/yer referansı:
| Kod Kokusu | Var mı? | Nerede? | SOLID İhlali |
|------------|---------|---------|---------------|
| Uzun metot (>20 satır) | | | SRP |
| God Class / Büyük sınıf | | | SRP |
| Çok fazla parametre (>3) | | | SRP |
| Somut bağımlılıklar (new X() içeride) | | | DIP |
| Yeni özellik için değişiklik gerek | | | OCP |
| Magic number / string | | | — |
| Derin iç içe geçme (>3 seviye) | | | — |
| Yinelenen kod (DRY ihlali) | | | — |
| Kötü isimlendirme (a, b, tmp, flag) | | | — |
## ADIM 2 — Refactoring Planı
Tespit edilen her sorun için:
```
SORUN: [sorunun adı]
NEDEN: [tek cümle]
ÇÖZÜM: [kullanılacak teknik veya desen]
ETKİ: [beklenen somut fayda]
```
## ADIM 3 — Refactored Kod
```{programlama_dili}
// ============================================================
// REFACTORED — Clean Code + SOLID
// Hedef: {hedef}
// Değişiklikler: [kısa özet madde listesi]
// ============================================================
[refactored kodun tamamı]
```
Kodlama kuralları:
1. Her kritik değişikliğin yanına tek satır WHY yorumu ekle (ne değil, neden)
2. Bağımlılıkları soyut arayüz üzerinden al — new ConcreteService() yerine inject et (DIP)
3. Her sınıf tek bir sorumluluğa sahip olsun; birden fazla neden değişiyorsa böl (SRP)
4. Yeni davranış için mevcut sınıfı değiştirme; genişlet (OCP)
5. Magic değerleri adlandırılmış sabit veya enum'a çevir
6. {programlama_dili} idiomatic kod yaz
## ADIM 4 — Karşılaştırma Tablosu
| Metrik | Önce | Sonra | Gelişim |
|--------|------|-------|---------|
| Toplam sınıf/modül sayısı | | | |
| En uzun tek metot (satır) | | | |
| Somut bağımlılık sayısı | | | |
| Cyclomatic complexity (tahmini) | | | |
| Test edilebilirlik puanı (1–5) | | | |
## ADIM 5 — Test Planı (3 Kritik Senaryo)
Her senaryo için: ne test ediliyor, hangi bağımlılık mock'lanıyor, beklenen davranış:
1. **[Test ismi]**: [açıklama]
2. **[Test ismi]**: [açıklama]
3. **[Test ismi]**: [açıklama]
# KISITLAR
- Dış kütüphane ekleme — yalnızca dil standart kütüphanesi ve mevcut bağımlılıklar
- Orijinal iş mantığını değiştirme; yalnızca yapı, sorumluluklar ve isimlendirme
- Refactored kod sözdizim hatası içermemeli
- Performansı kötüleştiren değişiklik varsa açıkça belirt
# ÇIKTI FORMATI
1. Code Smell Audit tablosu
2. Refactoring Planı (her sorun için madde)
3. Refactored Kod (tam, çalışır code block)
4. Karşılaştırma Tablosu
5. Test Planı (3 senaryo)Bu ne işe yarar?
SOLID prensipleri ve Clean Code'a göre kod analizi, refactoring planı ve yeniden yazılmış kod — test edilebilirlik ve bakım kolaylığı odaklı.