Differenza tra il diagramma delle classi e il diagramma degli oggetti

Il differenza fondamentale tra diagramma di classe e diagramma di oggetti è che il il diagramma di classe rappresenta le classi e le loro relazioni tra di esse mentre il diagramma dell'oggetto rappresenta gli oggetti e le loro relazioni tra loro in un determinato momento.

UML è l'acronimo di Unified Modeling Language. Aiuta a modellare i concetti orientati agli oggetti per sviluppare soluzioni software. I diagrammi UML offrono vari vantaggi come la comprensione dei requisiti aziendali e una conoscenza approfondita delle funzionalità del sistema. Esistono due tipi di modellazione UML principali. Sono modelli strutturali e modelli comportamentali. La modellazione strutturata descrive le caratteristiche statiche del sistema. D'altra parte, la modellazione comportamentale descrive la natura dinamica del sistema. Il diagramma delle classi e il diagramma degli oggetti sono due diagrammi UML di modellazione strutturale.

CONTENUTO

1. Panoramica e differenza chiave
2. Cos'è il Class Diagram
3. Cos'è il diagramma degli oggetti
4. Confronto affiancato - Diagramma classe vs Diagramma oggetto in forma tabulare
5. Sommario

Cos'è il Class Diagram?

Un diagramma di classe rappresenta una vista statica del sistema. Descrive gli attributi e le operazioni delle classi. I diagrammi di classe sono il diagramma di modellazione più utilizzato per i sistemi orientati agli oggetti poiché possono essere mappati direttamente con linguaggi orientati agli oggetti.

Figura 01: Diagramma classi

Sopra è un semplice esempio di diagramma di classe. È un sistema di ordinazione online. Utente, Cliente, Amministratore, Ordine, OrdineDettagli sono le classi. Ogni classe è composta da attributi e metodi. Gli attributi descrivono le proprietà mentre i metodi descrivono i comportamenti o le operazioni.

In un diagramma di classe, un rettangolo rappresenta la classe. Si divide ulteriormente in tre sezioni. La parte superiore è scrivere il nome della classe. La sezione centrale è per gli attributi e l'ultima sezione riguarda i metodi. La classe Customer ha attributi come nome, indirizzo, email, customerId, accountBalance e metodi come registro, accesso e acquisto.

Attributi e metodi

Gli attributi e i metodi hanno un simbolo per indicare la visibilità. Il - rappresenta privato. Le altre classi non possono accedere ai membri privati. Sono visibili solo a quella classe specifica. Il + rappresenta il pubblico e altre classi possono accedere a quei membri. Di solito, gli attributi di classe sono privati ​​e i metodi sono pubblici. C'è un'altra visibilità. Questo è chiamato protetto e il simbolo # lo rappresenta. Solo gli stessi membri di classe e sottoclasse possono accedere ai membri protetti.

L'utente è la forma generalizzata di amministratore e cliente. Queste due classi possono avere gli attributi e i metodi della classe utente, nonché i propri attributi e metodi. La classe User è la classe genitore mentre le classi Customer e Administrator sono le classi child. Questo concetto è chiamato generalizzazione.

Il cliente e l'ordine hanno il rapporto di composizione. La classe Order non può esistere senza la classe Customer. I dettagli dell'ordine e dell'ordine hanno la relazione di composizione. Pertanto, la classe OrderDetails non può esistere senza la classe Order.

Il diagramma di classe rappresenta anche la molteplicità. Quando si fa riferimento alla relazione Cliente e Ordine, il cliente può avere zero o molti ordini. D'altra parte, un ordine appartiene solo a un cliente. L'ordine e OrderDetails hanno una relazione 1 a 1. Un ordine può avere solo un OrderDetails. Queste sono alcune nozioni di base sui diagrammi di classe.

Cos'è il diagramma degli oggetti?

Un altro diagramma strutturale è un diagramma di oggetti. È simile a un diagramma di classe, ma si concentra sugli oggetti. I concetti di base del diagramma di oggetti sono simili a un diagramma di classi. Questi diagrammi aiutano a comprendere il comportamento degli oggetti e le loro relazioni in un determinato momento.

Figura 02: schema degli oggetti

S1, s2 e s3 sono oggetti studenti e si iscrivono all'oggetto del corso c1. L'oggetto del docente l1 insegna il corso c1. L'oggetto lecturer l2 insegna il corso speciale c2. Lo studente s3 si iscrive al corso c1 e al corso speciale c2. Questo diagramma illustra come un insieme di oggetti si relaziona l'un l'altro. Nel complesso, un diagramma di oggetti rappresenta la vista statica di un sistema ma, in particolare, rappresenta una vista statica del sistema in un determinato momento.

Qual è la differenza tra il diagramma delle classi e il diagramma degli oggetti?

Un diagramma di classe è un tipo di diagramma strutturale statico che descrive la struttura del sistema mostrando le classi, i loro attributi, i metodi e la relazione tra le classi. Un diagramma di oggetti è anche un tipo di diagramma strutturale statico che mostra una vista completa o parziale della struttura di un sistema modellato in un momento specifico.

Inoltre, i diagrammi delle classi definiscono le classi e mostrano come si relazionano tra loro. I diagrammi degli oggetti mostrano gli oggetti e le loro relazioni. Le classi sono i progetti e gli oggetti sono le istanze delle classi. Questa è la principale differenza tra diagramma di classe e diagramma di oggetti.

Inoltre, in un diagramma di classi, il nome della classe inizia con lettere maiuscole. ad esempio, Studente. In un diagramma di oggetti, il nome dell'oggetto è in lettere minuscole ed è sottolineato. ad esempio, s1: Studente

Riepilogo - Diagramma classe vs diagramma oggetto

Sia i diagrammi delle classi che degli oggetti rappresentano le caratteristiche statiche di un sistema. La differenza tra diagramma di classe e diagramma di oggetti è che il diagramma di classe rappresenta le classi e le loro relazioni tra di esse mentre il diagramma di oggetti rappresenta gli oggetti e le loro relazioni tra loro in un particolare momento. Questi diagrammi aiutano a ottenere una comprensione di alto livello del sistema.

Riferimento:

1. "Unified Modelling Language (UML) | Diagrammi degli oggetti. "GeeksforGeeks, 13 febbraio 2018. Disponibile qui 
2.Tutorial punti. "UML - Class Diagram". Punto tutorial, 8 gennaio 2018. Disponibile qui 
3.Tutorial punti. "UML - Object Diagrams".  Punto tutorial, 8 gennaio 2018. Disponibile qui