So ist die Frage einfach. Ich finde die Antwort einfach nicht im Internet. Ich denke, dass private Methoden im Diagramm nutzlos sind und nicht viel erzählen. Aber vielleicht denke ich falsch.Sollte ich private Methoden in das UML-Klassendiagramm einbeziehen?
Antwort
Private Methoden sind ein Implementierungsdetail der Klasse, nicht seine öffentliche API.
Nein:
Wenn Sie das Diagramm werden mit der externen Schnittstelle der Klasse zu zeigen, oder ein Subsystem, das die Klasse gehört, dann gibt es keinen Grund, sie zu schließen. Sie fügen nur visuelles Rauschen hinzu und verwirren den Leser.
Ja/Vielleicht:
Auf der anderen Seite, wenn Sie versuchen, den inneren Aufbau der Klasse selbst oder seine eng gekoppelten Zusammenarbeit mit einer anderen Klasse (man denke an friend
in C++) zu kommunizieren, dann es könnte angebracht sein.
Ja, Sie sollten sie einschließen. Es gibt ein bisschen mehr Details darüber, wie die Klasse funktionieren wird. IBM hat tatsächlich eine spezielle Notation für private Methoden - https://www.ibm.com/developerworks/rational/library/content/RationalEdge/sep04/bell/
Das Symbol für den privaten Bereich ('-') ist keine" spezielle Notation von IBM ", sondern Teil der UML-Spezifikation von OMG. –
Sie haben Recht. Vielen Dank :) –
Meinung:
UML ist nicht * eine 4GL-Programmiersprache. Sie verwenden es, um eine Idee, Design, Architektur zu vermitteln. Sie fügen nur Informationen hinzu, die diesem Zweck dienen. Es hat nicht das Konzept, "vollständig" zu sein. Wie ein Text in einem Buch, verwenden Sie nur Wörter, die für den Zweck der Übermittlung der Nachricht notwendig sind.
Wenn es als Teil der Systemdokumentation verwendet wird, und es alle Mitglieder anzeigen muss, dann generieren wir es nur danach.
UML ist nicht das Ziel, es ist nur eine Modellierung Sprache mit Menschen zu kommunizieren.
Also, wenn es den Zweck erfüllt, fügen Sie es hinzu, sonst lassen Sie es aus.
*) einig Versuche unternommen worden, um das gemacht, aber noch nicht sehr erfolgreich gewesen (TogetherJ in dem Sinne)
Es hängt davon ab, was Sie modellieren.
Im Allgemeinen bietet UML einen Mechanismus zum Anzeigen der Sichtbarkeit von Operationen (und Attributen). Als privates Feature kann in einem Diagramm dargestellt werden, dass Sie es auf einem Diagramm darstellen können. Ob Sie es zeigen oder nicht, hängt jedoch davon ab, was Sie modellieren. Wenn Sie das interne Verhalten der Klasse modellieren, dann ja. Wenn Sie nur ihre äußere Erscheinung modellieren, müssen Sie das nicht tun (aber Sie können es immer noch).
- 1. Sollte ich private Methoden mit RSpec testen?
- 2. Wann sollte ich öffentliche/private/statische Methoden verwenden?
- 3. Private Methoden in Ruby
- 4. Wie prüfe ich private Methoden in Rust?
- 5. Wie kann/sollte ich Ruby-Projektdateiabhängigkeiten in config/environment einbeziehen?
- 6. Verständnis private Methoden in Ruby
- 7. F # Private statische Methoden
- 8. Wann verwenden Sie private Methoden?
- 9. Private Methoden und Felder
- 10. Method Interceptor auf private Methoden
- 11. Prototyp für private Unter Methoden
- 12. Dart, Unit Test Private Methoden
- 13. Wann sollte ich das Jumbotron benutzen?
- 14. Muss ich @synthesize einbeziehen?
- 15. Geschützte und private Methoden in Rails
- 16. Kopfzeile in das Ergebnis 'grep' einbeziehen
- 17. Sollte ein Designklassendiagramm private Operationen anzeigen?
- 18. Zugriff auf "Public" -Methoden von "Private" Methoden in JavaScript-Klasse
- 19. Testen Sie Schnittstellen in C# private Methoden
- 20. Private Methoden in einer Mootools-Klasse
- 21. Warum brauchen wir 'private' Methoden in Ruby
- 22. Warum platziert OpenJDK private Methoden in vtable?
- 23. Wann sollte ich statische Methoden schreiben?
- 24. Sollte ich Methoden oder konstante Flags verwenden?
- 25. Wann sollte ich statische Methoden verwenden?
- 26. Wie testen Sie private Methoden mit NUnit?
- 27. Wie kann ich private Methoden mit DUnit testen?
- 28. private Felder und Methoden für eine Struktur
- 29. Wie kann ich beim Generieren von Dokumentationen über Cargo private Module einbeziehen?
- 30. Vars in Rollenaufgaben einbeziehen
Warum Stimmen runter? –
Ich denke, die Leute werden Ihre Frage off-topic und zu breit für SO finden. –
Ein UML-Diagramm ist wie jedes andere Diagramm ein Kommunikationswerkzeug. Was Sie in Ihrem Diagramm berücksichtigen sollten und sollten, hängt vollständig davon ab, was Sie kommunizieren möchten. –