コードベースが大きい場合は、現在作業中の部分に注意を集中してください。さもないと、あなたは圧倒されて、頭が爆発するかもしれません。いくつかの高レベルの概要が役立つと思います(利用可能な場合)が、プログラムフローを追跡するためにデバッガで多くの時間を費やす可能性があります。アプリケーションの概要を把握し、使用されていることを確認することをお勧めします。これにより、コードがどのように/何/なぜ使用されているかを理解できます。
私は通常、コードに対して何らかのコード複雑性ツールを実行して、問題のある領域を特定します。高得点の領域は、おそらく更新が非常に困難です。たとえば、サイクロマティックスケールで450を記録する関数に遭遇しました。案の定、何百ものIF。それを維持または変更することは非常に困難です。最悪の事態に備えてください。
また、特にシステムで作業している場合は、既存の開発者に質問することを恐れないでください。内なる考えを自分自身に保ち、問題の解決に集中してください。他の開発者を混乱させるようなコメントは避けてください。結局のところ、それは彼らの赤ちゃんであるかもしれず、彼らの赤ちゃんがいと言われるのを好む人はいません。
小さなステップを踏むだけで、わずかなコード変更でも大きな影響を与える可能性があります。
プログラムコードフローを考え出すことが役立つので、変更を加える場合、依存関係検索を実行して、どのメソッド/関数が何を呼び出すかを確認できます。メソッドCを変更するとします。
1つのメソッド/関数のみがCを呼び出す場合、それはかなり安全な変更です。何百ものメソッド/関数がCを呼び出すと、影響が大きくなります。
コードベースが適切に設計、作成、および保守されていることを願っています。もしそうなら、それを理解するにはしばらく時間がかかりますが、最終的には潮流が変わります。
それが泥の大きな球であるなら、あなたはその内部の働きを決して理解しない(または理解したい)かもしれません。