Diagramma delle Classi Flashcards
Da che parti è composta una classe in UML?
- Nome
- Attributi
- Metodi
Come si trova una classe?
- Evidenzio i nomi degli ipotetici oggetti dalla specifica del problema
- Considero gli use case e gli scenari
- Esaminando gli oggetti identificati negli scenari, controllo se alcuni possono essere raggruppati in classi
Quando e come si definiscono le relazioni?
- Durante l’analisi si stabiliscono le connessioni fra le classi
- E’ utile pensare alle molteplicità per esplicitare assunzioni implicite
- Durante il progetto le associazioni e le molteplicità vengono raffinate
Perché è meglio fare tante classi?
- Incapsulano meno intelligenza globale del sistema
- Sono più riutilizzabili
- Sono più facili da realizzare
Cosa succede se si fanno poche classi?
Ogni classe:
- Incapsula più intelligenza globale
- E’ meno riutilizzabile
- E’ meno facile da realizzare
Cosa sono gli attributi derivati?
Sono attributi che vengono calcolati sulla base di altri attributi, quindi non vengono memorizzati
Come si individuano gli attributi?
- Direttamente nel testo della specifica
- Durante la definizione della classe stessa
- Attraverso la conoscenza del dominio applicativo
Quali operazioni deve possedere una classe?
Tutte e sole le operazioni rilevanti al dominio applicativo
Come si scrive un operazione?
{+, -, #} nome (parametri) tipoRitorno
Cos’è una associazione?
Una associazione definisce un canale bidirezionale fra due classi
Cosa fa un diagramma delle classi?
Descrive gli aspetti statici di un sistema
- classi
- struttura
- relazioni
Come si distingue una classe astratta?
Attraverso il nome in corsivo
Come si definisce un attributo?
{+, -, #} nome : tipo [molteplicità]
Di default che visibilità un attributo?
Privato
Cos’è una aggregazione?
E’ una forma particolare di associazione e indica che una parte è in relazione con un oggetto (part-of)