Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Aiuto pattern observer

  1. #1

    Aiuto pattern observer

    Buongiorno a tutti.
    Ho un problema e sono abbastanza in alto mare.
    Devo implementare un publish/subscribe system composto da un message bus dove i messaggi sono pubblicati, publishers che pubblicano i messaggi e subscribers che devono accorgersi quando i messaggi vengono pubblicati nel message bus.
    Ogni messaggio viene inoltrato a tutti i subscribers e contiene codice HTML formattato.
    Per realizzarlo devo usare il pattern observer.
    Ho studiato questo pattern ma ho problemi a capire l'UML da utilizzare in questo caso.
    Qualcuno può darmi una mano a capire come poter realizzare il tutto?
    Grazie a tutti per l'aiuto.

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Il regolamento del forum (http://forum.html.it/forum/showthrea...hreadid=973889) in realtà dice "chiedere aiuto solo sui passaggi che creano difficoltà, specificando quali sono" altrimenti mettersi a fare il design di un programma a chiunque diventerebbe un po' problematico.
    Da come descrivi il problema credo che un po' di conoscenze tu le abbia, visto che di message bus del genere ne esistono già prova a scaricarne qualcuno e vedere come sono fatti, e guardane magari le API. È un argomento su cui documentazione varia se ne trova.

  3. #3
    Ho visto che il pattern observer in generale permette di creare delle associazioni 1 a molti.
    Presenta un Subject ed un Observer. In java esistono le java.util per Observer e Observable. Non mi risulta chiaro se è meglio avere una classe publisher che estende observable e una classe subscribers che estende observer....oppure basare tutto sulla classe messageBus. Non sto cercando qualcuno che mi scriva il codice ma qualcuno che m iindirizzi sullo schema che è consigliabile seguire.

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    Il publisher è esterno al pattern, per cui per mia esperienza, se ci rifacciamo alle java.util di cui accennavi il Subject estende Observable e gli Observer (coloro che si sottoscrivono e ricevono le notifiche) implementano "Observer". Il publisher non è altro che una classe che si occupa di modificare i dati in Subject e poi lanciare il processo di notifica (setChanged()/notifyObservers()).

    Però non ho capito se il tuo message bus è a livello di rete, oppure un bus solo logico all'interno della tua applicazione.

  5. #5
    No non è a livello di rete è solo una semplice applicazione di simulazione. Penso però che tutto il pattern si basa sul messageBus. Quindi penso che messageBus sia il subject del pattern observer...giusto? ...però non mi è particolarmente chiaro il tutto..
    Grazie intanto per il tuo aiuto

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    707
    quindi penso che messageBus sia il subject del pattern observer.
    È corretto, i subscriber (gli observer) si possono poi magari sottoscrivere a tutti i messaggi del bus, o solo a quelli di un certo tipo.

    Io fossi in te mi guarderei qualche implementazione tipo queste su googlecode:
    http://code.google.com/p/simpleeventbus/
    http://code.google.com/p/guava-libra...ntBusExplained

    Ciao.

  7. #7
    Ti ringrazio per l'aiuto. Domani provo a darci un occhio.
    Buona serata

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.