Middle+
Kod incelemesi yaparken nelere dikkat ediyorsun?
sobes.tech yapay zeka
AI'dan gelen yanıt
- Proje kod stiliyle uyumluluk
- Kodun okunabilirliği ve anlaşılabilirliği
- Kod tekrarının olmaması (DRY)
- Mimari desenler ve tasarım ilkelerinin doğru kullanımı (SOLID)
- Hata işleme ve sınır durumları
- Bellek sızıntılarının olmaması (güçlü referans döngüleri, yönetilmeyen nesneler)
- Problemi çözmek için uygun veri yapıları ve algoritmaların kullanımı
- Yorumların varlığı ve güncelliği
- Birim testlerinin varlığı ve kapsamı
- Performans optimizasyonu (uygulanabilir ise)
- Atomiklik ve okunabilirlik ile commitler
- Uygulamanın görev ve gereksinimlere uygunluğu
// Bellek sızıntılarının olmadığını kontrol etme örneği
class Parent {
var child: Child?
}
class Child {
weak var parent: Parent? // Güçlü döngüleri önlemek için weak kullanımı
}
// DRY kontrolü örneği
func computeSum(_ a: Int, _ b: Int) -> Int {
// Ortak mantık
return a + b
}
func processNumbers(_ x: Int, _ y: Int) {
let result = computeSum(x, y)
// Ek işlem
print(result)
}
func handleValues(_ p: Int, _ q: Int) {
let result = computeSum(p, q) // computeSum'un tekrar kullanımı
// Ek işlem
print(result * 2)
}
| Etkinlik | Kontrol ettiğim şey |
|---|---|
| Okunabilirlik | Değişken, fonksiyon, sınıf isimleri; girintiler |
| Doğruluk | Mantık, hata yönetimi, sınır durumları |
| Performans | Döngüler, karmaşık hesaplamalar, koleksiyonlarla çalışma |
| Testler | Testlerin varlığı ve kalitesi |
| Mimari/Tasarım | Desenlere ve ilkelere uygunluk |