
Ask HN: How to best approach new codebase in an unfamiliar language - tpaschalis
I realize this is a very open-ended and possibly silly question, but how does one get acquainted as fast as possible with a new codebase, in a language he&#x2F;she&#x27;s not very proficient in?<p>I&#x27;ve been recently trying to pick apart some convoluted code in Java, which contains heavy-ish OOPisms. Ι come primarily from a Python&#x2F;Go background, and I haven&#x27;t worked with Java in a deeper level before, so I find myself trying different things. Unfortunately I haven&#x27;t truly been productive yet, and I&#x27;m occasionally getting frustrated.<p><i>What are your stories, HN?</i> Do you use IDE features to look up things quickly? Pen-and-paper notes and diagrams? Get a minimum example working and hack on it ASAP? Keep banging on the walls, hoping to make cracks?<p>Edit : Typos
======
ainiriand
Breakpoints, breakpoints, breakpoints.

~~~
tpaschalis
Problems start when the code is not run in a standalone manner, but have
dependencies on another API's calls, but you might be right.. For most intents
and purposes (C, Python, Go) vi was more than enough, now I think I might have
to invest in learning my way around Eclipse or something. :P

~~~
malux85
Breakpoints can still help you here. You really do need to use an IDE, because
things like Goto definition, variable inspection live on breakpoints, being
able to jump up and down the class hierarchy at a breakpoint and "find usages"
will allow you to get a higher level overview of the project as a whole

