เมื่อจัดการกับโครงการที่มีไฟล์ต่าง ๆ มากมายฉันมักจะติดตามว่าชิ้นส่วนต่าง ๆ มีปฏิสัมพันธ์กันอย่างไร ฉันไม่เคยมีปัญหามากในการทำความเข้าใจกับองค์ประกอบเล็ก ๆ ที่แยกจากกัน แต่เมื่อความซับซ้อนของโครงการเพิ่มขึ้นฉันพบว่าตัวเองไม่สามารถสร้างความเข้าใจทางจิตใจเกี่ยวกับสิ่งที่เกิดขึ้น ฉันสังเกตเห็นสิ่งนี้โดยเฉพาะกับโครงการ OOP เนื่องจากจำนวนวิธีการและไฟล์ต้นฉบับเพิ่มขึ้น
พื้นหลังของฉัน: ฉันเป็นโปรแกรมเมอร์เว็บที่สอนด้วยตนเอง ฉันจัดการกับงูหลามส่วนใหญ่สำหรับสคริปต์ที่รวดเร็วและสกปรก แต่ฉันก็ทำโครงการdjangoขั้นพื้นฐานบางอย่าง ฉันชอบเฟรมเวิร์คของเว็บเช่นขวดเพราะในความเรียบง่ายของเค้าโครงไฟล์เดียวฉันสามารถติดตาม (ส่วนใหญ่) สิ่งที่เกิดขึ้นได้อย่างง่ายดาย
ตอนนี้ฉันพบว่าตัวเองกำลังอยู่ในสถานการณ์ที่ฉันจำเป็นต้องมีปฏิสัมพันธ์กับโครงการ Zend Framework PHP ขนาดใหญ่ที่คนอื่นพัฒนาขึ้นมาและฉันก็รู้สึกพยายามที่จะเข้าใจโค้ดที่แพร่กระจายออกไปเป็นไฟล์จำนวนมาก
คุณพบเทคนิคและกระบวนการใดที่มีประโยชน์ในการทำความเข้าใจกับรหัสฐานขนาดใหญ่ที่บุคคลอื่นพัฒนาขึ้น มีแผนภาพใดที่คุณค้นหาเพื่อช่วยให้คุณเข้าใจภาพใหญ่ขึ้นหรือไม่?