Cuando trato con un proyecto que tiene muchos archivos diferentes, siempre parezco perder la noción de cómo las partes interactúan entre sí. En realidad, nunca tuve un gran problema para comprender los componentes más pequeños de forma aislada, pero a medida que aumenta la complejidad del proyecto, me siento incapaz de construir mentalmente una comprensión de lo que está sucediendo. Noto esto especialmente con los proyectos OOP, a medida que aumenta el número de métodos y archivos fuente.
Mi experiencia: soy un programador web autodidacta. He tratado principalmente con python para scripts rápidos y sucios, pero también he realizado algunos proyectos básicos de django . Me gustan los marcos web como el matraz , porque en la simplicidad de un diseño de un solo archivo, puedo hacer un seguimiento fácil (principalmente) de lo que está sucediendo.
Ahora me encuentro en una situación en la que necesito interactuar con un gran proyecto PHP Zend Framework que alguien más desarrolló, y estoy abrumado por tratar de entender el código extendido a numerosos archivos.
¿Qué técnicas y procesos le han resultado útiles para comprender una gran base de código que alguien más ha desarrollado? ¿Hay algún diagrama en particular que encuentre que lo ayude a comprender la imagen más grande?