Ich beginne mit der Konstruktionsdokumentation. Insbesondere die Spezifikation - die die Absicht der betrachteten Sache angibt.
Wenn möglich, schaue ich dann in Designnotizen und Dokumentationen nach, um einen allgemeinen Eindruck davon zu bekommen, wie es gemacht wurde, über den Denkprozess, den Stil und die Natur der Betroffenen.
Wenn möglich, spreche ich dann mit den Leuten, die daran gearbeitet haben - was macht es? Wie? Warum? Wo sind die Leichen begraben?
Es gibt eine Tendenz unter Entwicklern, in Code zu springen: "Lassen Sie mich Ihnen diesen Code zeigen". Das ist in Ordnung für sie, aber sie neigen dazu, meine Bedürfnisse zu missbrauchen - das heißt, die hohe Ebene zu verstehen, die den Low-Level-Sachen Kontext verleiht.
Es verbraucht große Mengen an Gehirnleistung, um kleine Codefragmente außerhalb des vollständigen Kontexts zu betrachten und alles Bedeutsame zu verstehen. Wenn es also möglich ist, die Entwickler dazu zu bringen, über PRINZIP, Struktur, Einheiten und Module zu sprechen, führt dies zu einer Wertschätzung der Aufgabe.
Nur dann lohnt es sich, in den Code einzusteigen.
Im großen Schema der Dinge ist das Betrachten des Codes das Betrachten einer Seite voller Nullen und Einsen. Es gibt eine Bedeutung, aber es dauert lange, bis man es herausfindet. Wenn Sie wissen, wo Sie suchen müssen und welche Teile von Bedeutung sind, können Sie den Suchbereich einschränken.
Alles, was gesagt wurde - wenn es kein Dokument, keine Leute und nur Code gibt - dann bleibt nichts anderes übrig, als sich den Code anzuschauen.
In diesem Fall versuche ich normalerweise nicht, es durch langsames, tiefes Lesen zu verstehen. Ich mache einen kurzen Durchgang und überfliege alles. Manchmal sind dies nur geöffnete Dateien und sitzen mit dem Drücken der Bild-ab-Taste. Sie können eine erstaunliche Wertschätzung für ein großes Bild erhalten, indem Sie dies tun. (In einigen Fällen führe ich sogar einen String-Dump für ausführbare Dateien durch und durchsuche diese nach Signaturen und Mustern. Dies war in den letzten etwa 20 Jahren erstaunlich fruchtbar.)