2008-10-27 16 views

Antwort

9

Verwenden Sie eine Verschachtelungsbeziehung (eine Linie mit einem "+" in einem Kreis am übergeordnetem Ende).

+0

Ich kann diesen Link in StarUML nicht finden. Fehle ich etwas? – anon58192932

1

Für diese Art von Sache haben Sie separate Diagramme, die die interne Struktur oder Verarbeitung einer Klasse zeigen.

In der Regel sind diese zusätzlichen Diagramme Aktivitätsdiagramme, um die Verarbeitung anzuzeigen. Manchmal eine pro Methode. Möglicherweise verfügen Sie auch über ein internes Sequenzdiagramm, das die API-Interaktionen zeigt.

Kein Grund, dass Sie kein zusätzliches Klassendiagramm haben können, um die interne Struktur einer Klasse anzuzeigen.

OuterClass vs OuterClass::InnerClass 

Ich könnte mir vorstellen, wenn Sie in der Hoffnung auf ein Reverse-Engineering oder Code generieren:

7

Da UML soll nicht direkt Implementierung spezifisch sein, habe ich eine Namenskonvention, wie verwenden würde, zu/von UML, dass verschiedene Werkzeuge uns verschiedene Techniken (wenn sie es überhaupt unterstützen) würden.

Ein schneller Test einiger Reverse Engineering mit Enterprise Architect (EA v7) bestätigt, dass sie die obige InnerClass::OuterClass Syntax bei der Verarbeitung von einigen C# mit einer öffentlichen inneren Klasse verwenden.

+0

Ich werde die "Verschachtelungsbeziehung" verwenden, über die Schimpanse gesprochen hat, aber deine Idee war auch gut, danke! – Barth

0

Oder Sie können die innere Klasse vollständig von der äußeren Klasse eingeschlossen, ein Rechteck innerhalb eines anderen zeigen.