Within the first couple of days I thought I had completed this task, then I noticed something I had missed which needed to be done but would have major repercussions on the project, essentially this meant a lot more work.
My task is to copy the functionality of a feature we have on a web server, to an application. So the code is already there mainly it's just going to take some time to re-factor. It opens up a lot of questions though:
- Do I use the same methods but add a boolean parameter which will let the algorithm know if this is an application or not? Or do I overload each method for the application?
- When is it OK/preferable to have duplicate code? I would have thought never...
- Do I go with my gut and start making changes only to have my boss come back and say I should have done the opposite?
I decided (as any good programmer would do) to spend some time researching my questions before I started to code. I found this great site which answered all my questions and also gave me answers to future questions. I suggest that every Java Developer has this site saved in their bookmarks. I'm currently just finishing off my work now so hopefully when my boss gets back all will be well.