Dado que UML está orientado hacia un enfoque más clásico para la orientación a objetos, ¿aún se puede usar de manera confiable para diseñar sistemas JavaScript?
Un problema específico que puedo ver es que los diagramas de clase son, de hecho, una vista estructural del sistema, y JavaScript está más orientado al comportamiento, ¿cómo puede manejarlo?
Tenga en cuenta que no estoy hablando del dominio del mundo real aquí; Es un modelo para la solución que estoy tratando de lograr.
design
object-oriented
javascript
uml
Julio Rodrigues
fuente
fuente
Respuestas:
Parece que estás preguntando dos cosas diferentes
Tenga en cuenta que UML incluye muchos tipos de diagramas , específicamente una rama de diagramas de comportamiento, incluidos diagramas de secuencia y de casos de uso. Dichos diagramas abordan específicamente su preocupación de modelar javascript como un lenguaje basado en el comportamiento.
Es muy posible que un sistema javascript no esté utilizando un diseño orientado a objetos. En tal caso, los diagramas de clase probablemente no serían apropiados, como usted señaló. Sin embargo, dado que JavaScript admite el diseño orientado a objetos, es posible que los diagramas de clase representen efectivamente un sistema que utiliza JavaScript. Realmente depende de cómo se use JavaScript.
fuente
Su respuesta está oculta en su pregunta:
Observe las técnicas de BDD (desarrollo impulsado por el comportamiento) y elija herramientas que se adapten a sus necesidades de diseño.
Discusión relacionada que puede resultarle útil: cómo escribir historias / escenarios en BDD . Y un artículo muy completo de la revista Code - Behavior-Driven Development
ps: en general,
UML represent general types of behavior
sin embargo, todavía puede usarse para modelar su diseño con el conjunto correcto de categoría seleccionada (como un diagrama de secuencia).I would reference the Wikipedia and find the right UML diagram category to use.
fuente
Se ha realizado un trabajo para adaptar la aplicación web a UML, se llama la extensión WAE y hay un libro llamado Building Web Applications with UML por Jim Conallen que lo explica en detalle. Puede ver las variables y la función de JavaScript en el diagrama de clases.
¿Por qué creo que es la mejor opción para modelar aplicaciones web? Porque todos saben cómo funciona el diagrama de clase y esto es lo más parecido a él. Es muy fácil de entender y los programadores son demasiado vagos para leer la documentación en palabras, pero mirar un diagrama no es tan difícil;). Sin embargo, si desea ver lo que sucede en la ejecución, debe buscar un diagrama de secuencia porque en la aplicación web, a veces los archivos se generan dinámicamente.
fuente
También hay modelos de comportamiento en UML que puede usar para representar el comportamiento del sistema, como diagramas de secuencia o diagramas de gráficos de estado.
fuente
Sí, puede usar UML, especialmente los diagramas de secuencia .
Con respecto al uso de diagramas de clase , depende de si diseña su aplicación utilizando principios de diseño orientados a objetos o no. Si solo tiene un montón de funciones de JavaScript, los diagramas de clase no agregan mucho. Si usa prototipos de objetos JavaScript para simular un tipo de clases, estos diagramas serán útiles.
Basado en mi experiencia en el diseño de front-end de Javascript en UML, he escrito un libro blanco sobre el tema: Diseño técnico en UML para aplicaciones angulares .
fuente
Parece que puedes usar UML para JavaScript, pero dependerá de cómo vas a enfocar tu trabajo.
Específicamente, JS / UML puede automatizar la documentación de UML para JSDoc, Dojo, YUI.
Supongo que hay más por ahí, pero todavía no he encontrado nada más.
fuente