最初は、コードのすべての行を理解する必要はありません。
上級開発者を 30 分間借りて、アーキテクチャの鳥瞰図を提供するように依頼してください。コードの主要なブロックは何か、それらがどのように相互作用するか、ユーザー/使用状況がシステムを介してデータを駆動する方法などです。
次に、(説明の後で) モジュールのソースを調査することに時間を費やしてください。
私には、ソースコードの大きなブロックを印刷して、その印刷物で床を覆うという (おそらく非常に奇妙な) 習慣があります。次に、ひざまずいてペンで床を這い回り、文字通り点から点へと矢印を描き、セクションの周りを描くことができます。コードを 2D で表示すると、物事を理解しやすくなります。また、フローをより詳細に理解するのに役立つ大量のメモを作成することもできます。
やがて、コードを特徴付けるイディオム (様式化されたやり方) を認識し始め、最終的には作成者の考え方に通じる道を見つけるでしょう。そうすれば、すべてがずっと簡単になります。
床に横たわっている間、ラップトップとグーグルを手元に置いて、遭遇した奇妙なものを解読できるようにします. また: 色付きの蛍光ペン FTW.
ソースを理解するために (少なくとも) 2 つのパスを作成します。最初は細部を理解しようとしないでください...「動き」の感触をつかむようにしてください-データがどこに行き、実行がどこに行くのか。これにより、コードのメンタル モデルのフレームワークが得られます。次回に進むときは、詳細を分解し始めることができますが、トップダウンのアプローチは常に私にとって物事をより簡単にします.
テクノロジー、言語、または環境に慣れていない場合は、手に取れる本が周りにあるかどうかを確認してください。現実の世界には、コンピューターの画面に収まるよりもはるかに多くの目に見えるスペースがあり、ラップトップに Google があり、本に構文/ライブラリ参照があり、身の回りにあるコードが (少なくとも私にとっては) プロセス全体を構成しています。非常に簡単です。