Možná hledáte: Entanglement, tedy kvantovou provázanost stavů.

Provázanost (anglicky coupling, též softwarová závislost) označuje v informatice do jaké míry je dané entita (modul) závislý na jiné entitě (modulu). Provázanost je většinou propojena se soudržností. Nízká provázanost obvykle koreluje s vysokou soudržností a naopak. Nízká provázanost je známkou dobře navrženého systému a dobré architektury, když je navíc kombinována ještě s vysokou soudržností, podporuje obecné cíle programování: dobrou čitelnost a udržovatelnost kódu.

Typy provázanosti

editovat

Provázanost může být nízká (volná nebo též slabá) nebo vysoká (pevná nebo též silná). Následující typy provázanosti jsou seřazeny od nejvyšší k nejnižší provázanosti:

  • Obsahová provázanost (angl. Content coupling, nazývaná též patologická provázanost – angl. Pathological coupling) – modul spoléhá na vnitřní fungování jiného modulu – přistupuje k jeho vnitřním datům. Pokud se změní logika druhého modulu, musí se změnit závislý modul.
  • Společná provázanost (angl. Common coupling, nazývaná též globální provázanost – angl. Global coupling) – dva moduly mají stejné globální proměnné (data). Změna těchto dat vede ke změně všech modulů, které je používají.
  • Vnější provázanost (angl. External coupling) – nastává, pokud dva moduly mohou sdílet externě uložený formát dat, komunikační protokol nebo rozhraní zařízení. V podstatě tato provázanost souvisí s komunikací s externími zařízeními.
  • Ovládací provázanost (angl. Control coupling) – jeden modul řídí tok jiného předáním informací typu co dělat.
  • Značková provázanost (angl. Stamp coupling nebo též provázanost strukturovaných dat – angl. Data-structured coupling) – moduly sdílí kompozitní strukturu dat a používají pouze jejich část. To může vést ke změně způsobu, jak modul čte a zaznamenává data.
  • Datová provázanost (angl. Data coupling) – moduly sdílejí data napříč, např. skrze parametry.
  • Provázanost zprávami (angl. Message coupling) – nejvolnější typ provázanosti. Dosahuje se jí decentralizací, komunikace probíhá pomocí parametrů a zasíláním zpráv.
  • Žádná provázanost – moduly spolu vůbec nekomunikují.

Specifickým případem nízké provázanosti je v obecné formě Déméteřin zákon.

Nevýhody

editovat

Pevně provázané systémy vykazují následující nevýhody:

  • Změna v jednom modulu vyvolá dominový efekt změn v dalších modulech.
  • Spojení modulů může vyžadovat více času a úsilí z důvodu zvýšené závislosti mezi moduly.
  • Jednotlivé moduly je těžší znovu použít a testovat, jelikož musejí být zahrnuty závislé moduly.

Problémy s výkonem

editovat

Výkon aplikace může být snížen díky vytváření, předávání, překladu a interpretaci zpráv a parametrů. Pro optimalizaci výkonu je nutné minimalizovat délku zpráv a maximalizovat jejich význam.

Řešení

editovat

Provázanost se zvyšuje mezi dvěma třídami, pokud:

  • třída A má třídu B jako atribut.
  • třída A volá metody třídy B.
  • třída A má metodu, která odkazuje na B – jako návratový typ nebo jako parametr.
  • třída A je potomek B nebo implementuje třídu B.

Nízká provázanost je vztah, kdy moduly mezi sebou komunikují prostřednictvím jednoduchého a stabilního rozhraní, přičemž se nezajímají o vnitřní provedení jiného modulu.

Provázanost versus soudržnost

editovat

Pojmy provázanost a soudržnost se často vyskytují společně. Oba vyjadřují kvalitu modulu. Provázanost hodnotí vnitřní závislosti mezi různými moduly, soudržnost popisuje, jak spolu souvisí funkce v modulu. Nízká soudržnost znamená, že modul plní úkoly, které nejsou příliš související, a proto může způsobit problémy, jako např. že modul se stává velký.

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy