Logo dell'Università di Catania: Siciliae Studium Generale 1434 Logo del Centro IPPARI, Ingegneria del software
matite e gomma
Loghi istituzionali: Siciliae Studium Generale 1434, Centro ricerche IPPARI, Università di Catania, Facoltà di Scienze Matematiche, Fisiche, Naturali, Insegnamento di Ingegneria del software

Diagrammi delle classi: concetti avanzati

Lezione 16 di Ingegneria del software

Docente: Giuseppe Scollo

Università di Catania, sede di Comiso (RG)
Facoltà di Scienze Matematiche, Fisiche e Naturali
Corso di Studi in Informatica applicata, AA 2007-8

Logo di Conformità WCAG-1 di Livello Tripla A, W3C-WAI Web Content Accessibility Guidelines 1.0 Validazione XHTML 1.0 Validazione CSS 2

Indice

  1. Diagrammi delle classi: concetti avanzati
  2. stereotipi e parole chiave
  3. aggregazioni e composizioni
  4. proprietà derivate
  5. interfacce e classi astratte
  6. proprietà di attributi
  7. associazioni qualificate
  8. classificazione multipla
  9. classificazione dinamica
  10. classi di associazione
  11. classi parametriche

stereotipi e parole chiave

notazione per estensioni standard di UML

aggregazioni e composizioni

sono associazioni che modellano la relazione "parte di" (un "aggregato" o "composto")

qual è la differenza?

notazione :

proprietà derivate

proprietà il cui valore può essere calcolato in termini dei valori di altre

interfacce e classi astratte

proprietà di attributi

oggetti riferimento e oggetti valore: qual è la differenza?

tutti gli oggetti sono dotati di identità, però:

associazioni qualificate

quando una collezione di oggetti è associata a ciascuna istanza, si può usare una loro proprietà per indicizzare l'associazione

ad esempio, si può qualificare l'associazione di testi presenti in una biblioteca ad un autore adoperando il titolo del testo come qualificatore:

attenzione al significato della molteplicità in un'associazione qualificata:

classificazione multipla

classificazione = assegnamento di tipo (a oggetti)

primo insieme di generalizzazione in classificazione multipla secondo insieme di generalizzazione in classificazione multipla terzo insieme di generalizzazione in classificazione multipla classificazione multipla con sottoclassificazione singola

classificazione dinamica

possibilità che un oggetto cambi tipo a tempo di esecuzione

classificazione multipla, dinamica: quando servono?

classi di associazione

è possibile arricchire un'associazione con caratteristiche di classe

ciò è utile per caratteristiche non attribuibili a una delle istanze delle due classi ai capi dell'associazione, bensì alla coppia

ad esempio : esempio di classe di associazione

N.B. come istanza di una classe di associazione si intende sempre una sola coppia di istanze delle classi associate

classi parametriche

template di classe : classe generica , dotata di un parametro (una variabile sui tipi)