Capitolo 32. La coesione
Questo lavoro è stato tradotto utilizzando l'AI. Siamo lieti di ricevere il tuo feedback e i tuoi commenti: translation-feedback@oreilly.com
Gli elementi accoppiati devono essere sottoelementi dello stesso elemento contenente. Questa è la prima implicazione della coesione. Spalare tutto il letame in un unico mucchio. La seconda implicazione della coesione è che gli elementi che non sono letame (o che non sono accoppiati) dovrebbero andare altrove.
Ad esempio, supponiamo di avere un modulo contenente 10 funzioni. Tre di queste funzioni sono accoppiate. Dove vanno le altre sette? Abbiamo due opzioni(Figura 32-1).
Figura 32-1. Elemento incoerente migliorato sia (in alto) estraendo un sottoelemento coesivo, sia (in basso) spostando altrove i sottoelementi disaccoppiati.
La prima consiste nel raggruppare gli elementi accoppiati in un proprio sottoelemento. Potremmo creare un sottomodulo che contenga solo le tre funzioni. Questo sottomodulo sarebbe coeso perché i suoi elementi sono accoppiati. Il modulo originale potrebbe essere meno coeso perché ora nessuno dei suoi elementi sarebbe accoppiato, ma non sarebbe peggio di prima.
L'estrazione di una funzione helper è un approccio del tipo "estrai un sottoelemento coeso". Se le linee della funzione helper devono essere modificate insieme, allora l'helper è coeso, con tutti i vantaggi che derivano dalla coesione: ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access