Ist UML, da es sich an einem eher klassischen Ansatz zur Objektorientierung orientiert, für den Entwurf von JavaScript-Systemen immer noch zuverlässig einsetzbar?
Ein spezielles Problem, das ich sehen kann, ist, dass Klassendiagramme in der Tat eine strukturelle Ansicht des Systems sind und JavaScript stärker vom Verhalten abhängt. Wie können Sie damit umgehen?
Bitte denken Sie daran, dass ich hier nicht über die Domäne der realen Welt spreche. Es ist ein Modell für die Lösung, die ich erreichen möchte.
design
object-oriented
javascript
uml
Julio Rodrigues
quelle
quelle
Antworten:
Es hört sich so an, als würdest du zwei verschiedene Dinge fragen
Beachten Sie, dass UML viele Arten von Diagrammen enthält , insbesondere einen Zweig von Verhaltensdiagrammen, einschließlich Sequenz- und Anwendungsfalldiagrammen. Solche Diagramme befassen sich speziell mit Ihrem Anliegen, Javascript als verhaltensgesteuerte Sprache zu modellieren.
Es ist durchaus möglich, dass ein Javascript-System kein objektorientiertes Design verwendet. In einem solchen Fall wären Klassendiagramme wahrscheinlich nicht geeignet, wie Sie betont haben. Da Javascript jedoch objektorientiertes Design unterstützt, ist es für Klassendiagramme möglich, ein System mit Javascript effektiv abzubilden. Es hängt wirklich davon ab, wie das Javascript verwendet wird.
quelle
Ihre Antwort ist in Ihrer Frage verborgen:
Sehen Sie sich BDD- Techniken (Behavior-driven Development) an und wählen Sie Tools aus, die Ihren Designanforderungen entsprechen.
Verwandte Diskussion, die Sie vielleicht nützlich finden - Wie man Geschichten / Szenarien in BDD schreibt . Und ein sehr umfassender Artikel aus dem Code-Magazin - Behavior-Driven Development
ps: Im Allgemeinen kann
UML represent general types of behavior
es jedoch weiterhin verwendet werden, um Ihr Design mit dem richtigen Satz ausgewählter Kategorien zu modellieren (wie ein Sequenzdiagramm).I would reference the Wikipedia and find the right UML diagram category to use.
quelle
Es wurde an der Anpassung der Webanwendung an UML gearbeitet, die als WAE-Erweiterung bezeichnet wird, und es gibt ein Buch mit dem Titel Building Web Applications with UML von Jim Conallen, in dem dies ausführlich erläutert wird. Sie können Variablen und Funktionen von JavaScript im Klassendiagramm sehen.
Warum halte ich es für die beste Option, eine Webanwendung zu modellieren? Weil jeder weiß, wie ein Klassendiagramm funktioniert, und das ist ihm am nächsten. Es ist sehr einfach zu verstehen und Programmierer sind zu faul, um die Dokumentation in Worten zu lesen, aber ein Diagramm zu betrachten ist nicht so schwer;). Wenn Sie jedoch sehen möchten, was bei der Ausführung passiert, sollten Sie nach einem Sequenzdiagramm suchen, da in einer Webanwendung manchmal Dateien dynamisch generiert werden.
quelle
Es gibt auch Verhaltensmodelle in UML, mit denen Sie das Verhalten des Systems wie Sequenzdiagramme oder Zustandsdiagramme darstellen können
quelle
Ja, Sie können UML verwenden, insbesondere Sequenzdiagramme .
In Bezug auf die Verwendung von Klassendiagrammen hängt es davon ab, ob Sie Ihre Anwendung nach objektorientierten Entwurfsprinzipien entwerfen oder nicht. Wenn Sie nur eine Reihe von JavaScript-Funktionen haben, fügen Klassendiagramme nicht viel hinzu. Wenn Sie JavaScript-Objektprototypen verwenden, um eine Art von Klassen zu simulieren, sind diese Diagramme hilfreich.
Basierend auf meinen Erfahrungen mit dem Entwerfen von Javascript-Frontends in UML habe ich ein Whitepaper zum Thema geschrieben: Technisches Design in UML für Angular-Anwendungen .
quelle
Es scheint, dass Sie UML für JavaScript verwenden können, aber es hängt davon ab, wie Sie Ihre Arbeit angehen.
Insbesondere kann JS / UML die UML-Dokumentation für JSDoc, Dojo und YUI automatisieren.
Ich würde vermuten, dass es da draußen mehr gibt, aber noch nichts anderes vorgefunden hat.
quelle