Come decidere se l'oggetto dovrebbe richiedere o ricevere dati?

1

Decidere se un oggetto dovrebbe richiedere dati (chiamando una funzione) o ricevere dati (avendo una funzione chiamata da un altro oggetto) dipende probabilmente dalla situazione esatta. Quindi, come faccio a decidere come gestirlo?

Se un esempio specifico può aiutare:

Attualmente sto progettando un'applicazione utilizzando la videocamera Kinect. Voglio dividere il segnale e passarlo a più oggetti che elaborano i dati (c'è un po 'di contabilità, perché ho bisogno di disporre un frame prima di richiedere quello successivo). Cosa dovrei fare? Ottieni dati dal Kinect e salvali, così altri oggetti possono richiederlo? O dovrei passare i dati agli oggetti che ne hanno bisogno?

Un disegno con nomi generici, le frecce indicano come devono scorrere i dati:

Kinect ---> KinectManager |---> DataProcessor
                          |---> DataHandler
                          |---> DataSomething

Il mio sospetto è il primo caso, perché potrei avere oggetti diversi richiedere dati, senza che KinectManager debba conoscere gli oggetti. Anche se nel secondo caso potrei progettare un'interfaccia con, ad esempio, un metodo Update () che riceve i dati Kinect.

    
posta Simon Verbeke 30.03.2015 - 09:30
fonte

1 risposta

1

Il manager Kinect può memorizzare i dati Kinect ed emettere un evento o un segnale. Ogni altro oggetto che ascolta questo evento o segnale può agire su di esso e recuperare questi dati.
Questo può essere particolarmente utile se gli altri oggetti non duplicano i dati Kinect in altri archivi.

    
risposta data 01.04.2015 - 15:58
fonte

Leggi altre domande sui tag