Sobes.tech
Middle+

Čo je to nízke prepojenie a vysoká kohezia (low coupling, high cohesion)?

sobes.tech AI

Odpoveď od AI

Nízka väzba (low coupling) a vysoká kohezia (high cohesion) sú princípy návrhu zamerané na vytváranie ľahko udržiavateľného, rozšíriteľného a testovateľného kódu.

Nízka väzba (Low Coupling)

  • Znamená, že komponenty (triedy, moduly) závisia minimálne od seba. Zmeny v jednom komponente majú minimálny vplyv na ostatné.
  • Charakteristiky nízkej väzby:
    • Komponenty komunikujú cez jasne definované rozhrania.
    • Minimalizuje sa priame prístupovanie k interným detailom iných komponentov.
    • Zmeny v implementácii jedného komponentu nevyžadujú zmeny v iných.
  • Výhody:
    • Uľahčuje testovanie jednotlivých komponentov.
    • Kód je flexibilnejší a ľahšie rozšíriteľný.
    • Znižuje riziko chýb pri zmenách.

Vysoká kohezia (High Cohesion)

  • Znamená, že prvky vnútri komponentu sú logicky prepojené a plnia jasne definovanú úlohu. Komponent s vysokou koheziou sa zameriava na jednu zodpovednosť.
  • Charakteristiky vysokej kohezie:
    • Všetky metódy triedy patria do jednej funkčnej oblasti.
    • Trieda neobsahuje nesúvisiace funkcie.
    • Logika týkajúca sa jednej úlohy je sústredená na jednom mieste.
  • Výhody:
    • Kód je ľahšie pochopiteľný a čitateľný.
    • Uľahčuje lokalizáciu a opravu chýb.
    • Komponent sa stáva viac znovu použivateľný.

Celkovo je cieľom nízka väzba medzi komponentmi a vysoká kohezia vnútri každého komponentu.