Есть ли более продуктивный способ, чем
проходя построчно с
ручка / бумага удобна, пока не разберёшься
из
На самом деле, «карандаш и бумага» - лучший способ понять, как работает приложение. Любые инструменты могут ускорить этот процесс, но не дадут вам универсального ответа на ваши вопросы - вам все равно придется анализировать картину, и анализ занимает гораздо больше времени, чем просто рисование этой картинки.
Если у вас есть интерес к методам, я использую следующий подход:
Найти точки приложения "верхнего уровня" (где поступают запросы пользователей или тому подобное);
Копайте код до нужного вам уровня.
Строго просматривая весь код, почти не нужно понимать общую рутину какого-либо процесса в программном обеспечении. Просто возьмите элементы верхнего уровня и разложите их, пока черные ящики, используемые в анализе, не станут достаточно маленькими, чтобы понять, что вам нужно. Никогда не пытайтесь разложить любой «черный ящик», который вы видите, пока вам действительно не нужны мелкие детали. Это действительно редко требуется, пока вы не начнете добавлять и изменять код. Цель состоит в том, чтобы узнать, где найти смысл начинать исправление ошибок или реализацию новых функций, а не запоминать каждую строку кода в любом компоненте.