RaceDataFacade viola il principio di responsabilità singola?

1

Ho sentito dire che ogni classe dovrebbe sempre essere solo responsabile di un singolo scopo, altrimenti dovresti riconsiderare il tuo design.

Quindi ecco le classi interessate:

  • WebSocketController: fornisce l'interazione di base con un WebSocketServer,                     è osservabile (in SWIFT attraverso eventi e in Java attraverso un pattern di osservatore modificato)
  • RaceDataFacade: fornisce metodi come registerForRaceEventsAtServer o registerForMeasurementsAtServer
  • JsonParser: responsabile dell'analisi dei dati in arrivo in entità facili da usare.

La cosa ora è che voglio avere l'intera logica JSON in outsourcing (per essere in grado di analizzare altri file dal server alla fine).

Quindi ho implementato un metodo parseEntities all'interno del mio JsonParser :

  1. Determina quali dati sono stati ricevuti dal server (RaceEvents o Measurements)
  2. Analizza una raccolta
  3. Restituisce una raccolta di tipo Entità (superclasse reciproca)

In RaceDataFacade determina se la raccolta è di tipo RaceEvent o Misura e chiama onRaceEventsUpdated rispettivamente onMeasurementsUpdated .

Soprattutto in SWIFT le conversioni di tipo sono un po 'difficili da fare, ma alla fine funzionano. È un buon design, o dovrei cambiarlo in qualche modo?

    
posta Shanakor 27.01.2016 - 15:38
fonte

0 risposte

Leggi altre domande sui tag