Ho già postato domande relative a questo problema, ma hanno affrontato tutti aspetti diversi del problema (solo per sapere che non sto ripubblicando la stessa domanda per ottenere più risposte).
 Quindi, in poche parole, ecco il mio problema: ho una classe   Timeline   , che ha una variabile membro dell'interfaccia% -a% co_de. La linea temporale gestisce QUANDO il contenuto viene attivato. Esiste anche una classe   Content   , che ottiene un riferimento alla classe   Trigger    e chiama i metodi   Timeline      Timeline    in determinati momenti (come quando l'utente colpisce la barra spaziatrice). Per organizzare insieme   play()    e   Triggers   , vengono uniti insieme in una classe chiamata   Timeline    (che è l'unica classe a cui interessa il resto del programma). 
 Questo mi porta a un problema di progettazione, dal momento che questa classe   Cue    viene usata così spesso nel mio codice, sarebbe un problema cambiarla in seguito. 
 A causa della  Legge di Demetra , non dovrei fare getter e setter per   Cue    e   timeline    variabili membro, e invece copia molte delle loro funzioni in   triggers    (e chiama a turno le funzioni delle variabili membro). In questo modo, le altre classi non conosceranno il funzionamento interno di esso?