Sobes.tech
Middle

Czym jest łączność?

sobes.tech AI

Odpowiedź od AI

Spójność (łączenie) jest miarą zależności między modułami lub komponentami programu.

  • Wysoka spójność: Zmiany w jednym module wymagają zmian w innym. Utrudnia to utrzymanie, testowanie i ponowne użycie.
  • Niska spójność: Moduły są stosunkowo niezależne. Zmiany w jednym module mają minimalny wpływ na inne. Sprzyja elastyczności, modularności i ułatwia testowanie.

Przykłady typów spójności (od najlepszych do najgorszych):

  • Spójność danych (Data coupling): Moduły wymieniają dane przez parametry funkcji. Idealne.
  • Spójność odcisków (Stamp coupling): Moduł przekazuje strukturę danych innemu, ale odbiorca używa tylko części tej struktury. Mniej elastyczne.
  • Kontrolowana spójność (Control coupling): Moduł przekazuje flagę lub polecenie, które określa zachowanie innego modułu. Utrudnia zrozumienie przepływu.
  • Wspólna spójność (Common coupling): Moduły korzystają z tej samej zmiennej globalnej lub wspólnego obszaru pamięci. Bardzo niebezpieczne, trudne do śledzenia zmian.
  • Zawartościowa spójność (Content coupling): Jeden moduł bezpośrednio odwołuje się do wewnętrznych elementów innego modułu (np. lokalnych zmiennych). Najgorszy typ, całkowicie narusza enkapsulację.

Celem jest dążenie do niskiej spójności, aby tworzyć bardziej utrzymywalny i elastyczny kod.