Middle+
Į ką atkreipi dėmesį atliekant kodo peržiūrą?
sobes.tech AI
Atsakymas iš AI
- Atitikimas kodo stiliaus standartams
- Lengvas skaitymas ir supratimas
- Kodo dubliavimosi nebuvimas (DRY)
- Teisingas architektūrinių modelių ir projektavimo principų taikymas (SOLID)
- Klaidos ir ribinių atvejų apdorojimas
- Atminties nutekėjimų nebuvimas (stiprios nuorodų ciklai, nevaldomi objektai)
- Tinkamų duomenų struktūrų ir algoritmų naudojimas sprendžiant užduotį
- Komentarų buvimas ir jų aktualumas
- Vienetinių testų ir jų padengimo lygis
- Veikimo optimizavimas (jei taikoma)
- Atomariškumas ir skaitymas komitų
- Atitikimas įgyvendinimui pagal užduotį ir reikalavimus
// Pavyzdys, kaip patikrinti atminties nutekėjimų nebuvimą
class Parent {
var child: Child?
}
class Child {
weak var parent: Parent? // Naudojama weak, kad išvengtume stiprių ciklų
}
// Pavyzdys, kaip patikrinti DRY principą
func computeSum(_ a: Int, _ b: Int) -> Int {
// Bendroji logika
return a + b
}
func processNumbers(_ x: Int, _ y: Int) {
let result = computeSum(x, y)
// Papildomas apdorojimas
print(result)
}
func handleValues(_ p: Int, _ q: Int) {
let result = computeSum(p, q) // Pakartotinis computeSum naudojimas
// Papildomas apdorojimas
print(result * 2)
}
| Aspektas | Ką tikrinu |
|---|---|
| Skaitymas | Kintamųjų, funkcijų, klasių pavadinimai; įtraukimas |
| Teisingumas | Logika, klaidų apdorojimas, ribiniai atvejai |
| Veikimas | Ciklai, sudėtingi skaičiavimai, kolekcijų naudojimas |
| Testavimas | Testų buvimas ir kokybė |
| Architektūra/Design | Atitiktis modeliams, principams |