Das Klassendiagramm stellt eine statische Ansicht einer Anwendung dar. Es repräsentiert die Arten von Objekten, die sich im System befinden, und die Beziehungen zwischen ihnen. Eine Klasse besteht aus ihren Objekten und kann auch von anderen Klassen erben. Ein Klassendiagramm wird verwendet, um verschiedene Aspekte des Systems zu visualisieren, zu beschreiben und zu dokumentieren sowie ausführbaren Softwarecode zu erstellen.
Es zeigt die Attribute, Klassen, Funktionen und Beziehungen, um einen Überblick über das Softwaresystem zu geben. Es enthält Klassennamen, Attribute und Funktionen in einem separaten Fach, das bei der Softwareentwicklung hilfreich ist. Da es sich um eine Sammlung von Klassen, Schnittstellen, Assoziationen, Kollaborationen und Einschränkungen handelt, wird es als Strukturdiagramm bezeichnet.
Zweck von Klassendiagrammen
Der Hauptzweck von Klassendiagrammen besteht darin, eine statische Ansicht einer Anwendung zu erstellen. Es ist das einzige Diagramm, das häufig für die Konstruktion verwendet wird, und es kann mit objektorientierten Sprachen abgebildet werden. Es ist eines der beliebtesten UML-Diagramme. Nachfolgend sind die Zwecke der Klassendiagramme aufgeführt:
- Es analysiert und entwirft eine statische Ansicht einer Anwendung.
- Es beschreibt die Hauptaufgaben eines Systems.
- Es ist eine Basis für Komponenten- und Bereitstellungsdiagramme.
- Es umfasst Forward- und Reverse-Engineering.
Vorteile von Klassendiagrammen
- Es kann das Objektmodell für komplexe Systeme darstellen.
- Es reduziert die Wartungszeit, indem es vor dem Codieren einen Überblick über die Struktur einer Anwendung bietet.
- Es bietet ein allgemeines Schema einer Anwendung zum besseren Verständnis.
- Es stellt ein detailliertes Diagramm dar, indem der gewünschte Code hervorgehoben wird, der programmiert werden soll.
- Es ist hilfreich für die Stakeholder und die Entwickler.
Wichtige Komponenten eines Klassendiagramms
Das Klassendiagramm besteht aus drei Abschnitten:
- Schreiben Sie den Anfangsbuchstaben des Klassennamens groß.
- Platzieren Sie den Klassennamen in der Mitte des oberen Abschnitts.
- Ein Klassenname muss fett geschrieben werden.
- Der Name der abstrakten Klasse sollte kursiv geschrieben werden.
- Die Attribute werden zusammen mit ihren Sichtbarkeitsfaktoren geschrieben, die öffentlich (+), privat (-), geschützt (#) und Paket (~) sind.
- Die Zugänglichkeit einer Attributklasse wird durch die Sichtbarkeitsfaktoren veranschaulicht.
- Dem Attribut sollte ein aussagekräftiger Name zugewiesen werden, der seine Verwendung innerhalb der Klasse erklärt.
Beziehungen
In UML gibt es drei Arten von Beziehungen:
Im folgenden Beispiel ist Student_Name von Student_Id abhängig.
Beispielsweise sind das Girokonto, das Sparkonto und das Kreditkonto die verallgemeinerte Form des Bankkontos.
Beispielsweise ist eine Abteilung mit der Hochschule verbunden.
Vielzahl: Es definiert einen bestimmten Bereich zulässiger Instanzen von Attributen. Falls kein Bereich angegeben ist, wird einer als Standardmultiplizität betrachtet.
int zu verdoppeln
Beispielsweise werden mehrere Patienten in ein Krankenhaus eingeliefert.
Anhäufung: Eine Aggregation ist eine Teilmenge einer Assoziation, die eine Beziehung darstellt. Es ist spezifischer als die Assoziation. Es definiert eine Teil-Ganzes- oder Teil-von-Beziehung. In dieser Art von Beziehung kann die untergeordnete Klasse unabhängig von ihrer übergeordneten Klasse existieren.
Das Unternehmen umfasst eine Reihe von Mitarbeitern, und selbst wenn ein Mitarbeiter ausscheidet, besteht das Unternehmen weiterhin.
Komposition: Die Zusammensetzung ist eine Teilmenge der Aggregation. Es stellt die Abhängigkeit zwischen dem übergeordneten Element und seinem untergeordneten Element dar, d. h. wenn ein Teil gelöscht wird, wird auch der andere Teil verworfen. Es stellt eine Ganz-Teil-Beziehung dar.
Ein Kontaktbuch besteht aus mehreren Kontakten. Wenn Sie das Kontaktbuch löschen, gehen alle Kontakte verloren.
Abstrakte Klassen
In der abstrakten Klasse können keine Objekte eine direkte Entität der abstrakten Klasse sein. Die abstrakte Klasse kann weder deklariert noch instanziiert werden. Es wird verwendet, um die Funktionalitäten klassenübergreifend zu finden. Die Notation der abstrakten Klasse ähnelt der von Klasse; Der einzige Unterschied besteht darin, dass der Name der Klasse kursiv geschrieben ist. Da es keine Implementierung für eine bestimmte Funktion erfordert, ist es am besten, die abstrakte Klasse mit mehreren Objekten zu verwenden.
Nehmen wir an, dass wir eine abstrakte Klasse mit dem Namen haben Verschiebung mit einer darin deklarierten Methode, und diese Methode wird als aufgerufen fahren () . Nun kann diese abstrakte Klassenmethode von jedem Objekt implementiert werden, zum Beispiel von einem Auto, einem Fahrrad, einem Roller, einem Fahrrad usw.
Wie zeichne ich ein Klassendiagramm?
Das Klassendiagramm wird am häufigsten zum Erstellen von Softwareanwendungen verwendet. Es stellt nicht nur eine statische Ansicht des Systems dar, sondern auch alle wichtigen Aspekte einer Anwendung. Eine Sammlung von Klassendiagrammen als Ganzes stellt ein System dar.
Nachfolgend sind einige wichtige Punkte aufgeführt, die beim Zeichnen eines Klassendiagramms beachtet werden müssen:
- Um einen vollständigen Aspekt des Systems zu beschreiben, wird empfohlen, dem Klassendiagramm einen aussagekräftigen Namen zu geben.
- Die Objekte und ihre Beziehungen sollten im Voraus bekannt gegeben werden.
- Die Attribute und Methoden (Verantwortlichkeiten) jeder Klasse müssen bekannt sein.
- Es sollte eine Mindestanzahl gewünschter Eigenschaften angegeben werden, da eine größere Anzahl unerwünschter Eigenschaften zu einem komplexen Diagramm führt.
- Notizen können nach Bedarf vom Entwickler verwendet werden, um die Aspekte eines Diagramms zu beschreiben.
- Die Diagramme sollten so oft neu gezeichnet und überarbeitet werden, dass sie korrekt sind, bevor die endgültige Version erstellt wird.
Beispiel für ein Klassendiagramm
Nachfolgend finden Sie ein Klassendiagramm, das das Kundenauftragssystem beschreibt.
Verwendung von Klassendiagrammen
Das Klassendiagramm wird verwendet, um eine statische Sicht auf das System darzustellen. Es spielt eine wesentliche Rolle bei der Erstellung der Komponenten- und Bereitstellungsdiagramme. Es hilft, einen ausführbaren Code zu erstellen, um Vorwärts- und Rückwärtsentwicklung für jedes System durchzuführen, oder wir können sagen, dass er hauptsächlich für die Konstruktion verwendet wird. Es stellt die Zuordnung zu objektorientierten Sprachen wie C++, Java usw. dar. Klassendiagramme können für folgende Zwecke verwendet werden:
- Um die statische Sicht auf ein System zu beschreiben.
- Um die Zusammenarbeit zwischen allen Instanzen in der statischen Ansicht anzuzeigen.
- Zur Beschreibung der vom System ausgeführten Funktionen.
- Die Softwareanwendung mithilfe objektorientierter Sprachen erstellen.