È sensibile al modello del controller

1

Ci sono già molte risposte utili su MVC. La maggior parte degli argomenti indica chiaramente come i controller e la vista interagiscono. Un controller è a conoscenza del modello ma il modello è anche a conoscenza del controller?

Un esempio concreto: Supponiamo che voglio spostare un oggetto nel gioco, viene premuto un pulsante, Esso invia le coordinate al controller insieme alle coordinate dell'oggetto whoms deve essere cambiato. (Il modello Suppoe è una classe di gioco con pochi vincoli, o modifica le coordinate o non cambia nulla, a seconda dello stato del gioco).

Ora, il controller ha una conoscenza del modello, quindi chiede al modello di modificare le coordinate dell'oggetto. Posso dare come parametro anche l'istanza di questo controller in modo che se il gioco (classe) modifica in modo efficace le coordinate, allora il gioco chiede al controllore di notificare a tutti gli abbonati?

Quindi la domanda è: il controller è una sottoparte del modello?

    
posta Luai Ghunim 21.03.2018 - 22:15
fonte

1 risposta

11

Assolutamente no. Non ci sono motivi per cui il modello sappia qualcosa sul controller.

Se accade che una modifica di un modello debba propagare un evento, non è compito del modello chiamare il controllore per eseguire il lavoro. Invece, il controllore si iscrive all'evento all'interno del modello e reagisce di conseguenza, rispondendo all'evento stesso o esponendo se stesso a un evento che verrà generato a sua volta.

    
risposta data 21.03.2018 - 22:22
fonte

Leggi altre domande sui tag