Middle+
Na co zwracasz uwagę podczas przeglądu kodu?
sobes.tech AI
Odpowiedź od AI
- Zgodność ze stylem kodu projektu
- Czytelność i zrozumiałość kodu
- Brak duplikacji kodu (DRY)
- Prawidłowe użycie wzorców architektonicznych i zasad projektowania (SOLID)
- Obsługa błędów i przypadków brzegowych
- Brak wycieków pamięci (cykle silnych referencji, obiekty niezarządzane)
- Użycie odpowiednich struktur danych i algorytmów do rozwiązania zadania
- Obecność komentarzy i ich aktualność
- Obecność i pokrycie testami jednostkowymi
- Optymalizacja wydajności (jeśli dotyczy)
- Atomowość i czytelność commitów
- Zgodność implementacji z zadaniem i wymaganiami
// Przykład sprawdzania braku wycieków pamięci
class Parent {
var child: Child?
}
class Child {
weak var parent: Parent? // Użycie weak, aby uniknąć silnych cykli
}
// Przykład sprawdzania DRY
func computeSum(_ a: Int, _ b: Int) -> Int {
// Wspólna logika
return a + b
}
func processNumbers(_ x: Int, _ y: Int) {
let result = computeSum(x, y)
// Dodatkowe przetwarzanie
print(result)
}
func handleValues(_ p: Int, _ q: Int) {
let result = computeSum(p, q) // Ponowne użycie computeSum
// Dodatkowe przetwarzanie
print(result * 2)
}
| Aspekt | Co sprawdzam |
|---|---|
| Czytelność | Nazwy zmiennych, funkcji, klas; wcięcia |
| Poprawność | Logika, obsługa błędów, przypadki brzegowe |
| Wydajność | Pętle, złożone obliczenia, praca z kolekcjami |
| Testowanie | Obecność i jakość testów |
| Architektura/Projekt | Zgodność z wzorcami i zasadami |