Mi pregunta está relacionada con este: Python tool that builds a dependency diagram for methods of a class.OOP: buen diseño de clase
Después de no encontrar ninguna herramienta, escribí un hack rápido: he utilizado el módulo de compilación, he analizado el código fuente en un árbol de fuentes abstractas y lo he recorrido para recopilar dependencias entre los métodos de clase. Mi secuencia de comandos generó un archivo de entrada para graphviz, que se utilizó para generar un gráfico de dependencia que se parece a this.
En este punto me he quedado atascado. Me di cuenta de que no tengo idea de cómo refactorizar la clase para que sea menos complicada. Simplemente no sé a qué debería aspirar. Por ejemplo, en la teoría de las bases de datos relacionales hay un par de reglas simples que se utilizan para llevar una base de datos a una forma normal. ¿Qué hay de una teoría similar sobre el buen diseño de clase (en términos de dependencias entre sus métodos)? ¿Este tema está cubierto en alguna parte para que yo pueda estudiarlo?
Los principios, en algunos casos, son difíciles de entender; algunas personas encuentran que los patrones de diseño son una manera más fácil de comenzar. –
Lo que dices es cierto, pero creo que el uso de patrones sin entender los principios es el origen del "abuso de patrones". – Trumpi