PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : objektdiagramm Java


CoconutKing
2009-06-02, 21:05:51
Hallo,

wie stelle ich ein objektdiagramm für einen Java klasse dar, die z.b. als Variablen nur 2 private Variablen hat:


public class blablu extends yy{

private Spielfeld gameField;
private Navigator navigation ;

....

public blablu(){
gameField=new Spielfeld();
navigation = new Navigator(this);
}
}


Die Beispiele die ich gefunden haben gehe eher in die Richtung:
http://se.cs.uni-magdeburg.de/tutorial/UML2/Objektdiagramm-Dateien/image001.jpg

wie Stelle ich das Diagramm dar, wenn ich Objekte erzeuge?

Monger
2009-06-02, 22:20:22
Achtung, gefährliches Halbwissen: das kommt auf die Diagrammart an. Natürlich kannst du irgendwelche Sequenzdiagramme benutzen, aber UML (wonach es in diesem Diagramm aussieht) kennt afaik keine Abläufe. Und das ist soweit auch vernünftig - die Instanziierung von Objekten ist ein Implementierungsdetail, was im Diagramm soweit nichts verloren hat.

Wichtig ist, wie die Objekte miteinander zusammenhängen, und das lässt sich im Diagramm so schon ganz gut beschreiben.

RMC
2009-06-02, 22:47:54
Es kommt immer drauf an, was du mit dem Diagramm darstellen und aussagen willst! Ob du die Vererbungshierarchie darstellst oder die Objektabängigkeiten zueinander im System etc.

Variablen gehen bei solchen Diagrammen meist schon zu sehr ins Detail.

Aber wenn du meinst dass es deine Darstellung rechtfertigt, pack sie rein :)

CoconutKing
2009-06-02, 22:59:56
als objektdiagramm versteh ich den zustand zu einem gewissen zeitpunkt z.b. start des programms.

was würde denn deiner meinung nach für diese zeile:

gameField=new Spielfeld();


im diagramm stehen?

RMC
2009-06-02, 23:10:11
als objektdiagramm versteh ich den zustand zu einem gewissen zeitpunkt z.b. start des programms.

Das wäre ein Zustandsdiagramm (http://de.wikipedia.org/wiki/Zustandsdiagramm_(UML)) ;)

robobimbo
2009-06-02, 23:25:29
bzw. objektsequenzdiagramme http://www.mathematik.uni-marburg.de/~hesse/uml/HintergrundInfosSequenzdiagramme.html

Daedalus
2009-06-03, 00:20:16
http://img30.imageshack.us/img30/6787/obj.th.jpg (http://img30.imageshack.us/my.php?image=obj.jpg)

das ist jetzt nach der Instanzierung von blablu.
wobei die blablu <-> Navigator Kante bidirektional sein wird.

Expandable
2009-06-03, 10:54:03
Achtung, gefährliches Halbwissen: das kommt auf die Diagrammart an. Natürlich kannst du irgendwelche Sequenzdiagramme benutzen, aber UML (wonach es in diesem Diagramm aussieht) kennt afaik keine Abläufe. Und das ist soweit auch vernünftig - die Instanziierung von Objekten ist ein Implementierungsdetail, was im Diagramm soweit nichts verloren hat.

Wichtig ist, wie die Objekte miteinander zusammenhängen, und das lässt sich im Diagramm so schon ganz gut beschreiben.

Die UML besteht nicht nur aus Klassendiagrammen; es gibt (u.a.) auch Objektdiagramme, Kommunikationsdiagramme, Sequenzdiagramme, Aktivitätsdiagramme, etc. Insgesamt sind es glaube ich über 20 verschiedene Diagrammarten. Auch die OCL (Object Contraint Language) ist eng mit UML verbunden.

In einem Klassendiagramm kommen keine Objekte vor; diese zeigen nur den statischen Aufbau des Systems. Dynamische Abläufe werden meist durch Sequenzdiagramme dargestellt. Es gibt aber auch die Möglichkeit, Objektdiagramme anzulegen. Dort kann man einzelne Objekte benennen und ihre vorhanden Assoziationen sowie die Werte ihrer Attribute eintragen. Aber auch Objektdiagramme sind statisch; sie zeigen nur einige Objekte mit ihren konkreten Werten an. Wenn man ein neues Objekt erzeugen will, so kann man dies in einem Sequenzdiagramm (im Gegensatz zu Klassen/Objektdiagrammen sind diese dynamisch) mit einer create-Message machen.