Klassendiagramme
Modellieren Sie objektorientierte Systeme mit Klassen, Attributen und Beziehungen. Unverzichtbar für die Planung von Softwarearchitekturen.
Was ist Klassendiagramme?
Klassendiagramme sind UML-Strukturdiagramme, die die statische Struktur objektorientierter Systeme modellieren. Sie zeigen Klassen, ihre Attribute, Methoden und die Beziehungen zwischen ihnen (Vererbung, Assoziation, Komposition, Aggregation). Klassendiagramme dienen als Blaupausen für Softwarearchitekturen und helfen Entwicklern, das Systemdesign vor dem Schreiben von Code zu visualisieren.
Bearbeiten und Vorschau
Erstellen Sie ein Klassendiagramme mit Mermaid-Syntax und sehen Sie Änderungen sofort.
Example
Class diagram example
A compact UML class diagram showing a diagram model connected to export methods.

Mermaid code
classDiagram
class Diagram {
+String code
+String type
+render()
}
class Exporter {
+toPNG()
+toSVG()
+toPDF()
}
Diagram --> Exporter : usesHäufige Anwendungsfälle
Softwarearchitektur-Planung
Entwerfen Sie die Struktur von Anwendungen vor der Implementierung. Definieren Sie Klassen, ihre Verantwortlichkeiten und wie sie interagieren, um wartbare, skalierbare Systeme zu bauen.
Objektorientiertes Design
Modellieren Sie Vererbungshierarchien, Schnittstellen und abstrakte Klassen. Visualisieren Sie Polymorphismus, Kapselung und Entwurfsmuster wie Factory, Singleton oder Observer.
Code-Dokumentation
Generieren Sie visuelle Dokumentation bestehender Codestrukturen. Helfen Sie neuen Teammitgliedern, komplexe Klassenhierarchien und Abhängigkeiten schnell zu verstehen.
Datenbankschema-Planung
Bilden Sie Objektmodelle auf Datenbanktabellen ab. Identifizieren Sie Entitäten, Beziehungen und Kardinalitäten, bevor Sie ORM-Modelle oder Datenbankschemata implementieren.
Hauptmerkmale
Klassenstruktur-Definition
Definieren Sie Klassennamen, Attribute mit Sichtbarkeitsmodifikatoren (public, private, protected) und Methoden mit Rückgabetypen und Parametern.
Beziehungstypen
Modellieren Sie Vererbung (Generalisierung), Assoziation, Aggregation, Komposition und Abhängigkeitsbeziehungen mit korrekter UML-Notation.
Schnittstellen & Abstrakte Klassen
Unterscheiden Sie zwischen konkreten Klassen, abstrakten Klassen und Schnittstellen mit Standard-UML-Konventionen und Stereotypen.
Multiplizität & Einschränkungen
Spezifizieren Sie Beziehungskardinalitäten (1..1, 1..*, 0..*) und fügen Sie Einschränkungen oder Notizen hinzu, um Geschäftsregeln und Designentscheidungen zu klären.
Best Practices
Mit Kernklassen beginnen
Beginnen Sie mit den wichtigsten Domänenentitäten und fügen Sie schrittweise unterstützende Klassen hinzu. Versuchen Sie nicht, alles auf einmal zu modellieren.
Korrekte Sichtbarkeit verwenden
Markieren Sie Attribute und Methoden mit der entsprechenden Sichtbarkeit: + für public, - für private, # für protected. Dies dokumentiert Kapselungsentscheidungen.
Relevante Beziehungen zeigen
Nehmen Sie nur bedeutungsvolle Beziehungen auf. Nicht jede Klasseninteraktion muss gezeigt werden – konzentrieren Sie sich auf architektonische Bedeutsamkeit.
Diagramme fokussiert halten
Erstellen Sie mehrere kleinere Diagramme für verschiedene Subsysteme anstatt eines riesigen Diagramms. Jedes sollte eine klare Geschichte erzählen.
Weitere Diagrammtypen erkunden
Flussdiagramme
Visualisieren Sie Prozesse, Arbeitsabläufe und Algorithmen mit Knoten und gerichteten Pfeilen. Perfekt für Geschäftsprozesse und Entscheidungsbäume.
Sequenzdiagramme
Dokumentieren Sie Interaktionen zwischen verschiedenen Akteuren oder Systemen im Zeitverlauf. Ideal für API-Dokumentation und Systemdesign.
Zustandsdiagramme
Stellen Sie Zustandsübergänge in Systemen oder Anwendungen dar. Hervorragend geeignet für die Modellierung von Lebenszyklen und Arbeitsabläufen.
Gantt-Diagramme
Planen und verfolgen Sie Projektzeitpläne mit Aufgaben und Abhängigkeiten. Perfekt für Projektmanagement und Terminplanung.
ER-Diagramme
Entwerfen Sie Datenbankschemata mit Entitäten und Beziehungen. Ideal für Datenbankmodellierung und Dokumentation.
User Journey
Bilden Sie Benutzererfahrungen und Interaktionen über verschiedene Berührungspunkte ab. Hervorragend für UX-Design und Customer-Journey-Mapping.
Git-Graphen
Visualisieren Sie Git-Branching-Strategien und Commit-Historien. Hilfreich zur Erklärung von Versionskontroll-Workflows.
Mindmaps
Organisieren Sie Ideen, brainstormen Sie Konzepte und erstellen Sie hierarchische visuelle Strukturen. Perfekt für Planung und Wissensabbildung.
Kreisdiagramme
Zeigen Sie proportionale Datenverteilungen mit kreisförmigen Diagrammen an. Ideal für Prozentangaben und Marktanteile.
Zeitleisten
Visualisieren Sie chronologische Ereignisse und Meilensteine entlang einer Zeitachse. Ideal für Projekthistorien und Roadmaps.
Kanban-Boards
Organisieren Sie Aufgaben in Spalten, die Workflow-Phasen darstellen. Perfekt für agiles Projektmanagement und Aufgabenverfolgung.
Quadrantendiagramme
Plotten Sie Elemente auf einem Zwei-Achsen-Raster zum Vergleichen und Priorisieren. Ideal für Feature-Priorisierung und strategische Analyse.
Sankey-Diagramme
Visualisieren Sie Flussmengen zwischen Knoten mit proportionalen Pfeilen. Perfekt für Energieflüsse, Budgetverteilung und Conversion-Funnels.
XY-Diagramme
Erstellen Sie Balkendiagramme und Liniendiagramme mit anpassbaren Achsen. Ideal für Datenvisualisierung und Trendanalyse.
Blockdiagramme
Erstellen Sie strukturierte Layouts mit Blöcken in Spalten und Zeilen. Ideal für Systemarchitektur und Komponentenübersichten.
Architekturdiagramme
Entwerfen Sie Cloud- und Systemarchitekturen mit Service-Icons und Verbindungen. Perfekt für Infrastrukturdokumentation.
Paketdiagramme
Visualisieren Sie Netzwerkprotokoll-Paketstrukturen mit Bit-Level-Feldlayouts. Unverzichtbar für Netzwerkprotokolldokumentation.