Ir al contenido
  1. Posts/

Pyreverse: Diagramas UML para Python

··252 palabras·2 mins·

🗺️ ¿Cómo entendés la arquitectura de un proyecto Python sin leer miles de líneas?

Pyreverse genera automáticamente diagramas UML de clases y dependencias de paquetes analizando el código fuente. Está integrado en Pylint desde la versión 0.15 (2008) y sigue siendo una herramienta vigente.

🔧 Uso básico:

# Genera diagramas de paquetes y clases en PNG
pyreverse -o png -p MiProyecto src/

# Resultado:
# packages_MiProyecto.png  → dependencias entre módulos
# classes_MiProyecto.png   → jerarquía de clases

📐 ¿Qué incluye cada diagrama?

ElementoDetalle
AtributosCon tipo si se puede inferir
MétodosTodos los métodos de la clase
HerenciaLinks entre clases padre-hijo
AsociacionesRelaciones entre instancias
ExcepcionesRepresentadas como clases

⚙️ Opciones útiles:

-k          # Solo clases (sin atributos ni métodos) — ideal para vista general
-f ALL      # Muestra TODOS los atributos y métodos (incluyendo privados)
-A -S       # Expande todos los ancestros y clases asociadas
-m n        # Oculta el nombre del módulo en los nodos

💡 Tip para proyectos grandes:

# Vista rápida de dependencias sin perderse en detalles
pyreverse -ASmy -k -o png src/ -p Overview

🔍 Explicación en pocas palabras

Un diagrama UML es como un mapa del código: muestra qué clases existen, qué atributos y métodos tienen, y cómo se relacionan entre sí. Pyreverse lee tu código Python y genera ese mapa automáticamente, sin que tengas que dibujarlo a mano. Es como tener documentación visual siempre actualizada.

Más información en el link 👇

También publicado en LinkedIn.
Juan Pedro Bretti Mandarano
Autor
Juan Pedro Bretti Mandarano