Para alguien relativamente nuevo en el ecosistema de Java, ¿existe una forma bastante ligera de hacer lo que frameworks como Qt y Django hacen con su sistema de señalización/receptor, donde los componentes pueden decir "I'm doing algo ", y otros componentes pueden manejar eso de una manera bastante flexible?Java - mecanismo de señal/slots
Pido disculpas de antemano si esta pregunta no supera la prueba de "respuesta de objetivo único".
Editar: Para agregar un poco más de contexto, esto está relacionado con una capa de aplicación basada en la base de datos para un servicio web. Ciertos recursos, cuando persisten, también necesitan guardar un registro de auditoría que contenga información de contexto adicional. En Django, haría esto a través del mecanismo de señalización, o usaría una de varias bibliotecas existentes que hacen justamente eso. Para un programa Scala, he creado mi propio hacky usando funciones de devolución de llamada, pero es más fácil con las funciones de primera clase. No tengo ninguna duda de que los marcos como Swing ofrecen facilidades para este tipo de cosas, pero estoy (quizás injustificadamente) asustado de agregar tal dependencia a lo que es actualmente una aplicación bastante simple (no es que Django no sea en sí mismo una dependencia masiva en Python vainilla!)
¿Estás hablando de [modelos basados en eventos] (http://en.wikibooks.org/wiki/Java_Programming/Event_Handling)? – jefflunt
En un nivel de componente medio a grande donde tiene interfaces que implementan 2 o más métodos, creo que Dependency Injection ha ganado la batalla sobre cómo acoplar componentes. En el nivel pequeño (como proporcionar una acción a un botón GUI), el patrón de Escucha es el rey. –
@normalocity: sí, pero no directamente relacionado con la programación de GUI. – Mikesname