Sobes.tech
Junior

Čo sú princípy DRY a KISS?

sobes.tech AI

Odpoveď od AI

DRY (Ne opakuj sa se) — princip, ktorý povzbudzuje k vyhýbaniu sa duplikácii kódu. Každá časť informácie alebo logiky by mala existovať na jednom mieste.

KISS (Udržuj to jednoduché, hlupák) — princíp zameraný na jednoduchosť a jasnosť návrhu a logiky. Kód by mal byť čo najjednoduchší a ľahko udržiavateľný.

  • Výhody DRY:
    • Zníženie chýb: Zmeny v logike je potrebné vykonávať iba na jednom mieste.
    • Zrýchlenie vývoja: Nie je potrebné písať ten istý kód viackrát.
    • Zlepšenie čitateľnosti: Absencia duplikátov robí kód štruktúrovanejším.
  • Výhody KISS:
    • Jednoduché pochopenie: Jednoduchý kód je ľahšie čitateľný a pochopiteľný.
    • Jednoduchšie ladenie: Menej potenciálnych chybových bodov.
    • Rýchla podpora: Jednoduchý kód je ľahšie meniť a rozširovať.

Použitím týchto princípov:

<?php
// Príklad bez použitia DRY (duplicitná logika výpočtu zľavy)
function calculatePriceWithDiscountA(float $price): float {
    if ($price > 1000) {
        return $price * 0.9;
    }
    return $price;
}

function calculatePriceWithDiscountB(float $price): float {
    if ($price > 1000) {
        return $price * 0.9;
    }
    return $price;
}

// Príklad s použitím DRY (odstránenie logiky do samostatnej funkcie)
function applyDiscount(float $price): float {
    if ($price > 1000) {
        return $price * 0.9;
    }
    return $price;
}

function calculateFinalPriceA(float $price): float {
    return applyDiscount($price);
}

function calculateFinalPriceB(float $price): float {
    return applyDiscount($price);
}

// Príklad jednoduchého kódu (KISS)
function sum(int $a, int $b): int {
    return $a + $b;
}

// Zložitejší kód, ktorý sa dá zjednodušiť
function complexSum(int $a, int $b): int {
    $result = 0;
    $result += $a;
    $result += $b;
    return $result;
}

Použitie týchto princípov vedie k vytvoreniu kvalitnejšieho, ľahko udržiavateľného a rozšíriteľného kódu.