2009-12-24 6 views
5

El patrón MVC usa delegados para interconectar muchos objetos de clase con cada sobre. Para Qt son señales y ranuras, para C# son eventos, para Java son cierres. Pero todos los diseñadores de diagramación y UML que conozco solo operan con herencia y composición padre-hijo :(. ¿Hay algún software disponible que permita dibujar las clases visualmente, diseñar delegados, conectar delegados a los puntos finales y generar código basado en dicho 'modelo'?¿Existe algún software de diagramación para el patrón MVC con generación de código?

La descripción anterior puede no ser exacta:.. no soy muy profunda en la terminología Si alguien quiere cualquier aclaración sobre esta cuestión, por favor, comentario, yo wll aclarar lo que está claro

+3

Forget generación de código a partir de diagramas. –

+0

¿Qué esperas de una herramienta CASE así? Los diagramas de clase UML describen la estructura estática de su código, por lo que la generación de código puede tener algún sentido (hasta cierto punto). La señalización/escucha/suscripción de eventos es algo altamente dinámico, que ocurre en algún lugar en el nivel del objeto o dentro de la función (y no de la clase), y puede involucrar lógica empresarial y/o GUI. Tal vez funcionaría en el contexto de un diagrama de actividad, pero sospecho que esos diagramas estarían en el mismo nivel de abstracción que tu código, sin darte ningún beneficio sobre el código. –

+0

Básicamente, espero un diseñador visual que admita cosas tales como "señales de salida" y "manejador de señal" y pueda diseñar visualmente dicha relación de objeto. El soporte básico de generación de código me permitirá, teóricamente, definir reglas sobre cómo transformar un diagrama en código. – grigoryvp

Respuesta

1

La única manera en que puede aplicar exitosamente MDA es al revés. Defina el modelo en un DSL fluido y genere los diagramas que necesita de él.

He usado TogetherJ y Enterprise Architect, pero no estoy impresionado. Buenos diagramas, flujo de trabajo pésimo. Prefiero mucho un entorno Smalltalk (preferiblemente con MOOSE) y algunos generadores de diagramas.

2

AndroMDA tiene soporte para generar una interfaz de usuario web desde un modelo UML que define el flujo de una aplicación. Consulte Search Criteria Panel de la documentación Getting Started Java. Si usa el cartucho AndroMDA BPM4Struts, la capa de presentación estará basada en MVC. es lo que estás buscando sin embargo.

PS: La historia de MDA no está lleno de experiencias exitosas - y esto es un eufemismo - y que no recomendaría este enfoque (incluso menos para la capa de presentación)

5

he tenido buenas experiencias con Sparx System's Enterprise Architect. Puede descargar una versión de prueba de 30 días completamente funcional.

+0

+1 De hecho, una herramienta muy buena –

+0

para la generación de código? –

+0

+1, me encanta usar Enterprise Architect, pero generalmente no uso las capacidades de generación de código incorporadas; Prefiero acceder a su modelo desde un script de C#, así que construyo mi generador de código; esto da flexibilidad para crear todo lo que quiero –

2

Si usted está buscando algo libre/de código abierto, siempre hay:

StarUML

+0

Lo he comprobado, pero no puedo encontrar ninguna forma de modelar el tipo de relación signa-a-ranura. – grigoryvp

Cuestiones relacionadas