Indika Bandara wrote: > hi, > > If u r put into a large project of several 10,000 lines how would you > start from to understand it..? > > could somebody give some tips? > > TIA > > indika
I'd probably call it a "small" to "medium" project. I can crank out anywhere from 500-1000 lines per day (depending on what I'm doing and if I know how I want to develop whatever I'm working on). It helps to get your feet wet in an existing project by having a simple task to do. Sitting there studying the source code is a waste of time. Ask your boss for a simple task to do involving the project (if you don't already have one). Then build a debug build of the project and fire up the debugger. Pause the application (using the debugger) when you hit the section where you are supposed to add the code. You'll be in the rough neighborhood - might take a couple tries. Then start refining the place with breakpoints to get a feel for that section of code. It helps to play with the application to get a good idea for how it works so when you look at the source code you can say, "okay, this relates to that dialog" or "this drives the calculations for the next part of the process." For me, I can analyze most apps. by eyeballing the source usually after running it once to get an overview. Then again, I've been staring at bad programming practices for years, so it just comes naturally. But some apps. are just evil monolithic beasts (i.e. a hodgepodge of code in a big melting pot of awfulness) that you have to wade through. Hopefully the code you have to change isn't like that. Doxygen can help...but usually it isn't too helpful unless the code is already Doxygen-friendly (i.e. Doxygen is used internally). This is why companies hate hiring new people: Training takes about 6 months to get the new employee's feet wet in both source code and people interaction. And that's just to get so you are functional on the project. It can take significantly longer (depending on how good you are to begin with) to become an expert on the codebase so that modifications are second nature. -- Thomas Hruska CubicleSoft President Ph: 517-803-4197 *NEW* VerifyMyPC 2.2 Change tracking and management tool. Reduce tech. support times from 2 hours to 5 minutes. Free for personal use, $10 otherwise. http://www.CubicleSoft.com/VerifyMyPC/
