Qual è la responsabilità di una classe che chiama "altre classi come flusso di lavoro?

0

Cosa succede se ho una classe X che fa quanto segue:

  • Leggi un file (all'interno della sua stessa classe).
  • Analizza il file chiamando una classe Parse
  • Elaborazione del file analizzato chiamando una classe Process
  • Uscita chiamando una classe di output

Suppongo che la singola responsabilità sia la lettura del file, ma anche le altre funzioni (analisi, elaborazione, output) vengono eseguite da questa classe (chiamando altre classi.

O cosa succede se la parte di lettura dovrebbe essere fatta anche in una classe separata, e la classe X chiama solo queste 4 classi senza fare qualcosa da sé (come un manager)? Qual è quindi la responsabilità? Quindi la responsabilità unica "Gestione della lettura, analisi, elaborazione dell'output di un file" è una responsabilità?

    
posta Michel Keijzers 04.02.2016 - 13:32
fonte

1 risposta

2

La responsabilità di questa classe è quella di recuperare informazioni e produrle. In altre parole, tutto delle cose che fa è una sua responsabilità.

Tuttavia, come fa questo è affari suoi e di nessun interesse per i suoi utenti. Ad esempio, la maggior parte dei programmi C che producono output sullo schermo chiameranno alla fine printf , il cui codice risiede nella libreria standard piuttosto che nel codice sorgente del programma. Ciò non cambia il fatto che il compito del programma è quello di stampare le cose, significa solo che raggiunge questo compito riutilizzando il codice.

L'attività del programma personalizzato potrebbe essere descritta come "Stampa i rapporti di vendita di questo mese", mentre quella attività su printf è "Stampa qualsiasi stringa e formato con cui si chiama". Vedete che il compito del codice helper è una (piccola) parte del compito più grande, proprio come la stampa di questo rapporto può essere una piccola manciata del compito più grande ricevuto dall'intera applicazione.

    
risposta data 04.02.2016 - 13:37
fonte

Leggi altre domande sui tag