rachelcarmena / code-smells

4 stars 9 forks source link

Middle Man #4

Open Cmenesess opened 4 years ago

Cmenesess commented 4 years ago

Buenas le mando un cordial saludo somos estudiantes de la carrera de computacion de la ESPOL y andamos buscando repositorios que contengan diferentes tipos de code smell y con sus tecnicas de refactorizacion. Este issue es solo para dejar constancia del trabajo. La clase console solo se encarga de delegar la accion de imprimir a la clase system, cuando esta podria ser llamada directamente. Esta clase no es mas que una cascara vacias que no tiene sentido tenerla, ya que el entender y mantenerla cuesta tiempo y dinero. image Beneficio de refactorizar: • Menos complejidad del sistema al quitar una clase que no realiza nada. • Menos acoplamiento entre clases, ya que en caso de no eliminarla cada clase que desee imprimir algo debera tener una referencia de console para poder imprimir algo. Tecnica Remove Middle Man: Esta clase solamente se encarga de delegar a la clase system de que imprima algo. Por ello la mejor opcion para no tener esa clase que llegar a generar alto acoplamiento entre clases, seria eliminar esos metodos y forzar al cliente a llamar los metodos directamente. image Con ello se puede observar que ya no sera necesario tener una referencia de la clase console de por gusto y en caso de que se deseen mas clases que deseen imprimir algo no tendran la necesidad de tener esa referencia a la clase console, dejando asi el acomplamiento entre clases al minimo. Buenas tardes y disculpe las inconveniencias causadas.

rachelcarmena commented 4 years ago

Gracias por la información @Cmenesess . Nada, ningún inconveniente, es un repositorio personal :raised_hands:

Lo comenté porque los issues se suelen utilizar para pedir modificaciones o preguntar dudas sobre los repositorios y no sabía muy bien cuál era el objetivo de estos.

Creé este repositorio para enseñar los code smells y me alegro mucho de que les resulte útil. ¡¡ Es un honor !! :tada:

Hay una rama adicional además de la principal: solution con algunas propuestas (ya saben, no hay una solución única :wink: ).