Was ist Klasse?
Eine Klasse ist eine Blaupause, mit der ein Objekt erstellt wird. Die Klasse definiert, was ein Objekt tun kann.
Was ist ein Klassendiagramm?
Das UML-KLASSENDIAGRAMM bietet einen Überblick über ein Softwaresystem, indem Klassen, Attribute, Operationen und deren Beziehungen angezeigt werden . Dieses Diagramm enthält den Klassennamen, die Attribute und die Operation in separaten festgelegten Fächern.
Das Klassendiagramm definiert die Objekttypen im System und die verschiedenen Arten von Beziehungen, die zwischen ihnen bestehen. Es bietet eine allgemeine Ansicht einer Anwendung. Diese Modellierungsmethode kann mit fast allen objektorientierten Methoden ausgeführt werden. Eine Klasse kann sich auf eine andere Klasse beziehen. Eine Klasse kann ihre Objekte haben oder von anderen Klassen erben.
Das Klassendiagramm hilft beim Erstellen des Codes für die Entwicklung von Softwareanwendungen.
In diesem Tutorial lernen Sie:
- Was ist Klasse?
- Was ist ein Klassendiagramm?
- Vorteile des Klassendiagramms
- Wesentliche Elemente eines UML-Klassendiagramms
- Klassenname
- Attribute:
- Beziehungen
- Aggregation vs. Zusammensetzung
- Abstrakte Klassen
- Beispiel eines UML-Klassendiagramms:
- Klassendiagramm im Softwareentwicklungslebenszyklus:
- Best Practices für das Entwerfen des Klassendiagramms
Vorteile des Klassendiagramms
- Klassendiagramm Veranschaulicht Datenmodelle auch für sehr komplexe Informationssysteme
- Es bietet einen Überblick über die Struktur der Anwendung, bevor der eigentliche Code untersucht wird. Dies kann die Wartungszeit leicht verkürzen
- Dies hilft beim besseren Verständnis der allgemeinen Schaltpläne einer Anwendung.
- Ermöglicht das Zeichnen detaillierter Diagramme, in denen der zu programmierende Code hervorgehoben wird
- Hilfreich für Entwickler und andere Stakeholder.
Wesentliche Elemente eines UML-Klassendiagramms
Wesentliche Elemente des UML-Klassendiagramms sind:
- Klassenname
- Attribute
- Operationen
Klassenname
Der Name der Klasse wird nur in der grafischen Darstellung der Klasse benötigt. Es erscheint im obersten Fach. Eine Klasse ist die Blaupause eines Objekts, das dieselben Beziehungen, Attribute, Operationen und Semantiken verwenden kann. Die Klasse wird als Rechteck gerendert, einschließlich ihres Namens, ihrer Attribute und Operationen in einzelnen Kompartimenten.
Bei der Darstellung einer Klasse müssen folgende Regeln beachtet werden:
- Ein Klassenname sollte immer mit einem Großbuchstaben beginnen.
- Ein Klassenname sollte sich immer in der Mitte des ersten Fachs befinden.
- Ein Klassenname sollte immer fett gedruckt sein.
- Ein abstrakter Klassenname sollte kursiv geschrieben sein.
Attribute:
Ein Attribut heißt Eigenschaft einer Klasse, die das zu modellierende Objekt beschreibt. Im Klassendiagramm befindet sich diese Komponente direkt unter dem Namensfach.
Ein abgeleitetes Attribut wird aus anderen Attributen berechnet. Beispielsweise kann das Alter des Schülers leicht anhand seines Geburtsdatums berechnet werden.
Attribute Eigenschaften
- Die Attribute werden im Allgemeinen zusammen mit dem Sichtbarkeitsfaktor geschrieben.
- Öffentlich, privat, geschützt und Paket sind die vier Sichtbarkeiten, die mit +, -, # oder ~ gekennzeichnet sind.
- Sichtbarkeit beschreibt die Zugänglichkeit eines Attributs einer Klasse.
- Attribute müssen einen aussagekräftigen Namen haben, der die Verwendung in einer Klasse beschreibt.
Beziehungen
In UML gibt es hauptsächlich drei Arten von Beziehungen:
- Abhängigkeiten
- Verallgemeinerungen
- Verbände
Abhängigkeit
Eine Abhängigkeit bedeutet die Beziehung zwischen zwei oder mehr Klassen, in der eine Änderung in einer eine Änderung in der anderen erzwingen kann. Es wird jedoch immer eine schwächere Beziehung entstehen. Die Abhängigkeit gibt an, dass eine Klasse von einer anderen abhängt.
Im folgenden Beispiel ist Student vom College abhängig
Verallgemeinerung:
Eine Verallgemeinerung hilft, eine Unterklasse mit ihrer Oberklasse zu verbinden. Eine Unterklasse wird von ihrer Oberklasse geerbt. Die Generalisierungsbeziehung kann nicht zur Modellierung der Schnittstellenimplementierung verwendet werden. Das Klassendiagramm ermöglicht das Erben von mehreren Oberklassen.
In diesem Beispiel wird die Klasse Student aus der Personenklasse verallgemeinert.
Verband:
Diese Art von Beziehung repräsentiert statische Beziehungen zwischen den Klassen A und B. Zum Beispiel; Ein Mitarbeiter arbeitet für eine Organisation.
Hier sind einige Regeln für die Vereinigung:
- Assoziation ist meistens Verb oder eine Verbalphrase oder ein Substantiv oder eine Substantivphrase.
- Es sollte benannt werden, um die Rolle der Klasse anzugeben, die am Ende des Zuordnungspfads angehängt ist.
- Obligatorisch für reflexive Assoziationen
In diesem Beispiel wird die Beziehung zwischen Student und Hochschule gezeigt, bei der es sich um Studien handelt.
Vielzahl
Eine Multiplizität ist ein Faktor, der einem Attribut zugeordnet ist. Es gibt an, wie viele Instanzen von Attributen beim Initialisieren einer Klasse erstellt werden. Wenn keine Multiplizität angegeben ist, wird standardmäßig eine als Standardmultiplizität betrachtet.
Nehmen wir an, dass ein College 100 Studenten hat. Das College kann mehrere Studenten haben.
Anhäufung
Aggregation ist eine spezielle Art der Assoziation, die eine Ganzteilbeziehung zwischen Aggregat und seinen Teilen modelliert.
Zum Beispiel besteht die Klassenhochschule aus einem oder mehreren Schülern. Insgesamt sind die enthaltenen Klassen niemals vollständig vom Lebenszyklus des Containers abhängig. Hier bleibt die College-Klasse auch dann, wenn der Student nicht verfügbar ist.
Komposition:
Die Zusammensetzung ist eine spezielle Art der Aggregation, die eine starke Eigenverantwortung zwischen zwei Klassen anzeigt, wenn eine Klasse Teil einer anderen Klasse ist.
Zum Beispiel, wenn das College aus Klassen von Studenten besteht. Das College könnte viele Studenten enthalten, während jeder Student nur einem College angehört. Wenn das College nicht funktioniert, werden auch alle Studenten entfernt.
Aggregation vs. Zusammensetzung
Anhäufung |
Komposition |
Aggregation gibt eine Beziehung an, in der das Kind getrennt von seiner Elternklasse existieren kann. Beispiel: Auto (Eltern) und Auto (Kind). Wenn Sie also das Auto löschen, ist das untergeordnete Auto noch vorhanden. |
Zusammensetzungsanzeigebeziehung, in der das Kind niemals unabhängig vom Elternteil existieren wird. Beispiel: Haus (Eltern) und Zimmer (Kind). Die Zimmer werden niemals in ein Haus aufgeteilt. |
Abstrakte Klassen
Es ist eine Klasse mit einem Operationsprototyp, aber nicht der Implementierung. Es ist auch möglich, eine abstrakte Klasse ohne darin deklarierte Operationen zu haben. Eine Zusammenfassung ist nützlich, um die Funktionen in den Klassen zu identifizieren. Betrachten wir ein Beispiel für eine abstrakte Klasse. Angenommen, wir haben eine abstrakte Klasse, die als Bewegung mit einer darin deklarierten Methode oder Operation bezeichnet wird. Die in der abstrakten Klasse deklarierte Methode heißt move () .
Diese abstrakte Klassenmethode kann von jedem Objekt wie einem Auto, einem Tier, einem Roboter usw. zum Ändern der aktuellen Position verwendet werden. Es ist effizient, diese abstrakte Klassenmethode mit einem Objekt zu verwenden, da für die angegebene Funktion keine Implementierung bereitgestellt wird. Wir können es auf jede Weise für mehrere Objekte verwenden.
In UML hat die abstrakte Klasse dieselbe Notation wie die Klasse. Der einzige Unterschied zwischen einer Klasse und einer abstrakten Klasse besteht darin, dass der Klassenname streng kursiv geschrieben ist.
Eine abstrakte Klasse kann nicht initialisiert oder instanziiert werden.

In der obigen abstrakten Klassennotation gibt es die einzige einzelne abstrakte Methode, die von mehreren Objekten von Klassen verwendet werden kann.
Beispiel eines UML-Klassendiagramms
Das Erstellen eines Klassendiagramms ist ein unkomplizierter Prozess. Es sind nicht viele technische Details erforderlich. Hier ist ein Beispiel:
Das Geldautomaten-System ist sehr einfach, da Kunden einige Tasten drücken müssen, um Bargeld zu erhalten. Es gibt jedoch mehrere Sicherheitsebenen, die jedes ATM-System passieren muss. Dies hilft, Betrug zu verhindern und Bankkunden Bargeld zur Verfügung zu stellen oder Details zu benötigen.
Im Folgenden finden Sie ein Beispiel für ein UML-Klassendiagramm:
Klassendiagramm im Softwareentwicklungslebenszyklus
Klassendiagramme können in verschiedenen Softwareentwicklungsphasen verwendet werden. Es hilft bei der Modellierung von Klassendiagrammen aus drei verschiedenen Perspektiven.
1. Konzeptionelle Perspektive: Konzeptionelle Diagramme beschreiben Dinge in der realen Welt. Sie sollten ein Diagramm zeichnen, das die Konzepte in der untersuchten Domäne darstellt. Diese Konzepte bezogen sich auf die Klasse und sind immer sprachunabhängig.
2. Spezifikationsperspektive: Die Spezifikationsperspektive beschreibt Software-Abstraktionen oder -Komponenten mit Spezifikationen und Schnittstellen. Es gibt jedoch keine Verpflichtung zu einer spezifischen Implementierung.
3. Implementierungsperspektive: Diese Art von Klassendiagrammen wird für Implementierungen in einer bestimmten Sprache oder Anwendung verwendet. Implementierungsperspektive, Verwendung für die Softwareimplementierung.
Best Practices für das Entwerfen des Klassendiagramms
Klassendiagramme sind die wichtigsten UML-Diagramme, die für die Entwicklung von Softwareanwendungen verwendet werden. Es gibt viele Eigenschaften, die beim Zeichnen eines Klassendiagramms berücksichtigt werden sollten. Sie repräsentieren verschiedene Aspekte einer Softwareanwendung.
Hier sind einige Punkte, die beim Zeichnen eines Klassendiagramms beachtet werden sollten:
- Der Name des Klassendiagramms muss aussagekräftig sein. Darüber hinaus sollte der eigentliche Aspekt des Systems beschrieben werden.
- Die Beziehung zwischen jedem Element muss im Voraus identifiziert werden.
- Die Verantwortung für jede Klasse muss identifiziert werden.
- Für jede Klasse sollte eine Mindestanzahl von Eigenschaften angegeben werden. Daher können unerwünschte Eigenschaften das Diagramm leicht komplizieren.
- Benutzerhinweise sollten immer dann enthalten sein, wenn Sie einen Aspekt des Diagramms definieren müssen. Am Ende der Zeichnung muss es für das Softwareentwicklungsteam verständlich sein.
- Zuletzt muss das Diagramm vor dem Erstellen der endgültigen Version auf Normalpapier gezeichnet werden. Darüber hinaus sollte es überarbeitet werden, bis es zur endgültigen Einreichung bereit ist.
Fazit
- UML ist die Standardsprache zum Spezifizieren, Entwerfen und Visualisieren der Artefakte von Softwaresystemen
- Eine Klasse ist eine Blaupause für ein Objekt
- Ein Klassendiagramm beschreibt die Objekttypen im System und die verschiedenen Arten von Beziehungen, die zwischen ihnen bestehen
- Es ermöglicht die Analyse und Gestaltung der statischen Ansicht einer Softwareanwendung
- Klassendiagramme sind die wichtigsten UML-Diagramme, die für die Entwicklung von Softwareanwendungen verwendet werden
- Wesentliche Elemente des UML-Klassendiagramms sind 1) Klasse 2) Attribute 3) Beziehungen
- Das Klassendiagramm bietet einen Überblick über die Struktur der Anwendung, bevor der eigentliche Code untersucht wird. Dies reduziert sicherlich die Wartungszeit
- Das Klassendiagramm ist nützlich, um objektorientierte Programmiersprachen wie Java, C ++, Ruby, Python usw. abzubilden.