Diagramma delle Classi Flashcards

1
Q

Da che parti è composta una classe in UML?

A
  • Nome
  • Attributi
  • Metodi
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Come si trova una classe?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Quando e come si definiscono le relazioni?

A
  • 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
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Perché è meglio fare tante classi?

A
  • Incapsulano meno intelligenza globale del sistema
  • Sono più riutilizzabili
  • Sono più facili da realizzare
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Cosa succede se si fanno poche classi?

A

Ogni classe:

  • Incapsula più intelligenza globale
  • E’ meno riutilizzabile
  • E’ meno facile da realizzare
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Cosa sono gli attributi derivati?

A

Sono attributi che vengono calcolati sulla base di altri attributi, quindi non vengono memorizzati

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Come si individuano gli attributi?

A
  • Direttamente nel testo della specifica
  • Durante la definizione della classe stessa
  • Attraverso la conoscenza del dominio applicativo
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Quali operazioni deve possedere una classe?

A

Tutte e sole le operazioni rilevanti al dominio applicativo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Come si scrive un operazione?

A

{+, -, #} nome (parametri) tipoRitorno

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Cos’è una associazione?

A

Una associazione definisce un canale bidirezionale fra due classi

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Cosa fa un diagramma delle classi?

A

Descrive gli aspetti statici di un sistema

  • classi
  • struttura
  • relazioni
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Come si distingue una classe astratta?

A

Attraverso il nome in corsivo

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Come si definisce un attributo?

A

{+, -, #} nome : tipo [molteplicità]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Di default che visibilità un attributo?

A

Privato

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Cos’è una aggregazione?

A

E’ una forma particolare di associazione e indica che una parte è in relazione con un oggetto (part-of)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Cosa implica la composizione?

A
  • una istanza della parte appartiene ad una sola istanza del composto
  • la parte deve sempre appartenere a un composto
  • il composto è responsabile per la creazione e cancellazione delle sue parti
17
Q

Quali vantaggi ha l’uso della composizione?

A

Ha vantaggi in relazione ai rischi e problemi di memory management e previene i dangling pointers (si adatta bene alla garbage collection)

18
Q

Quando si usa la composizione?

A

Si usa la composizione quando la parte appartiene ad un unico “tutto” in un dato momento e non ha vita indipendente

19
Q

Quando si usa la aggregazione?

A

Si usa la aggregazione se due oggetti sono uniti da una relazione part-of (come auto con ruota e motore)

20
Q

Quando si usa la associazione?

A

Si usa la associazione se due oggetti sono considerati indipendenti

21
Q

Cosa indica una dipendenza?

A

Una dipendenza indica che un elemento cliente è a conoscenza di un elemento fornitore e che un cambiamento del fornitore potrebbe influire sul cliente

22
Q

E’ possibile aggiungere altre sezioni alla classe?

A

Sì, come per esempio le eccezioni che solleva o una descrizione

23
Q

Che relazione c’è tra il diagramma delle classi e quello di interazione?

A
  • Diagrammi statici e dinamici sono disegnati in parallelo
  • L’uno induce la struttura dell’altro
  • Devono essere consistenti
24
Q

Cos’è una classe attiva?

A

Una classe si definisce attiva se, quando istanziata, essa controlla la propria esecuzione e quindi opera autonomamente

25
Q

Cos’è una generalizzazione?

A

E’ una relazione tassonomica tra una classe più generale a una più specifica, quindi ogni istanza della classe più specifica è indirettamente una istanza della classe più generica