in reply to Re: Rewriting a large code base
in thread Rewriting a large code base
Hear, hear! That's a very important part of it. But this is what I would do:
1. Understand the purpose of the entire system
2. Understand the function of each component
3. Understand the interfaces between components
4. Choose what interfaces you want to use. Make them consistent. Also look at components that can be merged. Be sure to plan what the whole thing will look like when you're done, rather than haphazardly hacking away at it.
5. Change the neccessary components to impement these interfaces one at a time, hopefully without breaking anything in between.
One key that's very easy to forget is to know the architecture of the system very well. Find the orignal author if you can, or read design documents if there are any. Just know what you're changing before you start accidentally breaking things that you don't understand. (I speak from experience)
See you, space cowboy