Caratteristiche desiderabili del design
2024-10-22 16:20:11 0 Segnala
Accedi per visualizzare il contenuto completo
Altre creazioni dell'autore
Schema/Contenuto
minimizzare la complessità
L'obiettivo principale del design dovrebbe essere quello di minimizzare la complessità. Evitare di fare "intelligenti" design. I design intelligenti sono generalmente difficili da capire. Al contrario, fare "semplice" e "facilmente comprensibile" design. Se il tuo design non ti permette di immergerti in una parte specifica in modo sicuro ignorando la maggior parte del resto del programma, allora quel design non sta facendo il suo lavoro.
facilmente gestibile
La facilità di manutenzione significa progettare per il programmatore di manutenzione. Immaginate continuamente le domande che il programmatore di manutenzione potrebbe porre sul codice che avete scritto. Considerate il programmatore di manutenzione come il vostro pubblico e quindi progettate il sistema in modo che sia autodocumentante.
connettività minima
La connessione minima significa ridurre al minimo le connessioni tra le diverse parti di un programma durante la progettazione. Si utilizza il principio di coesione forte, di accoppiamento debole e di occultamento dell'informazione per progettare classi con il numero minimo di connessioni. La connessione minima minimizza il lavoro durante l'integrazione, i test e la manutenzione.
Riutilizzabilità
La riutilizzabilità significa che nella progettazione di un sistema è possibile riutilizzarne le varie parti in altri sistemi.
Lean
Il lean si riferisce a quando si progetta un sistema in modo che non abbia parti superflue (Wirth, 1995; McConnell, 1997). Voltaire ha detto che la realizzazione di un libro è completata non perché non si può aggiungere nulla di più, ma perché non si può togliere nulla di più. Questo è particolarmente vero nel software, perché quando si modifica altro codice, è necessario sviluppare, revisionare, testare e considerare ulteriore codice. Le future versioni del software devono essere compatibili con il codice aggiuntivo.
standardizzazione
Un sistema è più dipendente da componenti esterni, più è intimidatorio per chi tenta di comprenderlo per la prima volta. Provare a utilizzare metodi standardizzati e universali, rendendo l'intero sistema familiare.
estensibilità
La scalabilità significa che è possibile migliorare il sistema senza compromettere la struttura di base. È possibile modificare una parte del sistema senza influire su altre parti del sistema. Le modifiche più probabili causano il minor danno al sistema.
Alta fan-in
Alta fan-in si riferisce al numero elevato di classi che utilizzano una determinata classe. L'alta fan-in significa che un sistema è stato progettato in modo da sfruttare al massimo le classi di livello inferiore utili all'interno del sistema.
medio-bassa connettività
La bassa e media diffusione indica che una classe utilizza solo un numero medio-basso di altre classi. Alta diffusione (superiore a circa 7) indica che una classe utilizza un gran numero di altre classi e quindi potrebbe essere troppo complessa. Gli studiosi hanno scoperto che indipendentemente dal numero di routine chiamate all'interno di una routine o dal numero di routine chiamate all'interno di una classe, il principio di bassa diffusione è utile.
portabilità
La portabilità si riferisce al fatto che la progettazione di un sistema debba essere facile da spostare in un altro ambiente.
progettazione a strati
La progettazione a livelli prevede di mantenere il livello di decomposizione il più possibile, in modo che sia possibile visualizzare il sistema a qualsiasi livello e ottenere una vista coerente. Quando si progetta un sistema, è possibile visualizzarlo a un livello senza dover scendere a livelli inferiori.
Raccogliere
Raccogliere
Raccogliere
0 Commenti
Pagina successiva
Consigliato per te
vedi di più