What is the best way to start breaking down an existing Application?
Currently, I have a project, where I have to add some fe开发者_如何学Goatures on to it, but the coding hasn't maintained any standards and it is extremely tough to break it down into manageable and understandable parts, to get started. And there is no documentation, to help out?
How would you start such project, if you had to?
Steps:
- (Optional) Cover system with hi-level automatic tests, which test system through UI example
- Carefully refactor to testable code
- Cover functionality with unit tests
- Refactor code to make implementation of new features possible
- Implement new features
Manuals:
- Book by Michael Feathers: Working Effectively With Legacy Code
- Book by Martin Fowler: Refactoring
精彩评论