Skip to main content

Dead Code Problem

Problem

Actually this problem occurred when i was doing integration two projects. [Phase1 and phase2 of a project] . Phase 2 is developed on top of the phase1. Parallel phase1 had changed lot . Mean time those were working on phase2 has commented existing phase 1 code without comments . Phase 1 and phase 2 merged with some conflicts. So we commented such places with the descriptive comment . After merged the result code base has merged those phase 2 commented parts. Also there was some of already dead code in phase 1. So it is difficult to understand weather this is actual dead code or commented one from phase 2.

Mistake

Had left dead dead code and missing comments .

Lesson learned

Normally developers leave dead code in their original code with the mind of future purpose. But this not a good habit to continue.As long as you use source control ,earlier code may exist. Problem will occur if you are not using such version control. In such a situation you can keep dead code with descriptive comment . Otherwise omit them . That is the best way to achieve clean code.

Comments

Amila Pradeep said…
true. i don't keep any dead code in my code. i used to remove all dead code just after 100% complete the related functionality/ page. but till that final commit, there might be commented lines.
Eranga said…
Yes..That is a best practice..Anyway we have to double check to make sure dead code has removed.Otherwise if we commit bulk of pages, we wont remembered we have commented some code. Although slip can be happen.

Popular posts from this blog

The transaction is in doubt

Sometimes you may get this error when you use transaction scope . The transaction is in doubt I also got this error recently and able to find the reason for it. That is because of the some of the readers had not properly disposed. Actually in this case you can use Using keyword to overcome this. Exception : System.Transactions.TransactionInDoubtException was unhandled by user code Message="The transaction is in doubt." Solution : using (reader) { }