Sobes.tech
Middle

Čo považujete za kvalitný kód?

sobes.tech AI

Odpoveď od AI

Pre mňa má kvalitný kód tieto vlastnosti:

  • Čitateľnosť: Je ľahko pochopiteľný inými vývojármi (a pre mňa po polroku).
  • Udržiavateľnosť: Zmeny a opravy chýb sa vykonávajú rýchlo a bezpečne.
  • Testovateľnosť: Kód je rozdelený na moduly, ktoré je ľahké izolovať a testovať.
  • Čistota: Bez duplikátov (DRY), jasné názvy premenných a funkcií, dodržiavanie štýlu kódu.
  • Efektívnosť: Optimálne využívanie zdrojov (procesor, pamäť) pre úlohu.
  • Spoľahlivosť: Zohľadňuje možné chyby (výnimky, null hodnoty) a správne ich spracováva.
  • Dokumentácia: Pri potrebe obsahuje jasné komentáre alebo dokumentáciu.

Príklad čistého kódu, ktorý sa vyhýba duplikácii:

// Zlé: duplikácia logiky
fun processUser(user: User) {
    if (user.isActive) {
        println("Spracovanie aktívneho používateľa ${user.name}")
        // Veľa kódu...
    } else {
        println("Spracovanie neaktívneho používateľa ${user.name}")
        // Rovnaké veľa kódu...
    }
}

// Dobré: extrahovanie opakujúcej sa logiky
fun processUser(user: User) {
    println("Spracovanie používateľa ${user.name}") // Všeobecná logika
    if (user.isActive) {
        processActiveUser(user)
    } else {
        processInactiveUser(user)
    }
    // Veľa kódu... // Všeobecná logika po if/else
}

fun processActiveUser(user: User) {
    // Iba špecifická logika pre aktívnych
}

fun processInactiveUser(user: User) {
    // Iba špecifická logika pre neaktívnych
}

Príklad, ktorý demonštruje čitateľnosť a jasné názvy:

// Zlé
fun calc(a: Int, b: Int): Int {
    return a + b
}

// Dobré
fun calculateSum(firstNumber: Int, secondNumber: Int): Int {
    return firstNumber + secondNumber
}