Few solutions are developed perfect from the start. Inexperience, bad habits, feature creeps and time pressure are just some of the factors that may affect the code quality of a solution.
Refactoring is the notion of cleaning up the application code without changing the actual functionality. It may be difficult to imagine why such a clean-up may be needed when end users do not get anything out of that.
If we take a desk as an example. You continuously receive stuff that pile up in heaps on the table and in the drawers. You may know exactly what you have lying and where it is – butyour colleagues might not. Typically you will continually clean up your desk, throwing away the unnecessary things and create a more transparent system of things.
Similarly, with the application code. This will always be true for over time. Code refactoring will provide the following benefits:
- Increase the understanding of the code significantly and minimize the need for technical documentation.
- As understanding increases, there is a great possibility of the error rate on new functionality will decrease.
- Increase the degree of testability (make it possible to create unit tests).
- Significantly better opportunities for locating errors.
- Better opportunities for new developers to understand the code.
Our refactoring services
You are perhaps already in progress with an application that needs refactoring – we will be happy to assist with the practical part of the refactoring.
Refactoring should be an ongoing discipline, we recommend combining refactoring with our mentor services. In this way, your developers become familiar with the concept and will in the future be able to perform the continuous refactoring himself.
We have been responsible for the maintainance process of many large projects with many team members (developers). Thus we have the experience of how the code quality should be and how code should be written – in a way so that maintenance and future extensions will not be a drag.
“But we’re afraid to modify the code …”
It’s a phrase we unfortunately hear too often. A phrase is a clear indication. Refactoring should be free to be carried out without, as a developer needed to be nervous to introduce a quantity of new errors.
In order to ensure that no errors are introduced in the existing code, the code should be covered by unit tests. That is, code that tests that the solution is still functional to meet the original business requirements. If unit tests are in place, there is no excuse not to perform refactoring.
Obviously, we have extensive experience developing unit tests and rewriting existing code to be testable.
We are Microsoft® .NET experts
Tel: +45 7027 8081
Fax: +45 7027 8082