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

NHibernate

This is new topic for me and I started to work on that few days ago. It is interesting to play and I learn lot during the days. :-) .Learning curve of the NHibernate is bit long and few resources are available. But using trial and error could be able to solve lot of problems. What is ? NHibernate is ORM solution and is intended for transparent binding .NET classes to database tables.Commonly we have mismatch beween the relational database and our objects. The aim of the NHibernate is reducing time efforts to switch application to another database provider .Basically it provides low overhead . “NHibernate increases your performance as a developer”.

Ship It Review -1

This books has been described Habits in interesting manner. Following story took from it and the story shows how we should go for a decision rather considering everybody doing it or becuse of we have already done it. Story: Did you hear the story of the woman who always cooked ham by cutting off and discarding a third of it first? When asked why, she said that was how her mother always cooked hams. When asked, her mother said that was how her mother had always cooked. They finally confronted Grandma, who admitted that when she was young, she didn’t have a pan big enough for an entire ham, so she always just cut the end off, and it became a habit.

tablediff command line utility in SQL Server

Above tablediff utility is very useful for comparing tables.It is not only tells us which records / columns are different but can also generate a SQL script to update the second table to make it the same as the first table. You have to navigate to following path the use this utility SELECT 'C:\Program Files\Microsoft SQL Server\100\COM> Then type command ; tablediff –? Then it shows all the options as follows   But only limitation is you could compare one table at a time. Even though you can do some interesting work to overcome this. That is Just go to the SQL sever and type following command execute it. So it will generate the script for all the table. Then you can add it into .bat file. SELECT 'C:\Program Files\Microsoft SQL Server\100\COM>tablediff -sourceserver "SourceDBName" -sourcedatabase "T1" -sourcetable ' + '"' + name +'" ' + '-destinationserver "DestinationDBName" -destinationdataba...