Confundido sobre el principio de responsabilidad única en el siguiente ejemplo

En el siguientevídeo, el autor toma una clase existente y le asigna el principio de responsabilidad única. Toma una clase de impresión que tiene el trabajo de acceso a datos, formateo e impresión del informe. Él divide cada método en su propia clase, por lo que crea una clase DataAccess para manejar el acceso a los datos, crea una clase ReportFormatter para manejar el formato del Informe y crea una clase ReportPrinter para manejar la impresión del Informe. La clase de informe original se deja con un método, Imprimir () que llama al método de clase de la Impresión de informes. DataAccess y ReportFormatter parecen ser responsables, pero ReportPrinter se basa en DataAcess y ReportFormatter, por lo tanto, ¿esto no rompe el SRP o lo estoy entendiendo mal?

Respuestas a la pregunta(4)

Su respuesta a la pregunta