Refactoring

Refactoring to Composite Pattern Members Public

Composite Pattern is a useful technique to keep code maintainable and readable.

Rahul Pulikkot Nath
Rahul Pulikkot Nath
Refactoring

Introduce Tests when Fixing Bugs Members Public

Refactoring to add tests when fixing bugs helps increase your confidence and grow your test coverage.

Rahul Pulikkot Nath
Rahul Pulikkot Nath
Refactoring

Refactoring to Improve Readability - Separating Business Language and Programming Language Semantics Members Public

Code should be readable and easy to reason about.

Rahul Pulikkot Nath
Rahul Pulikkot Nath
Refactoring

Refactoring to Improve Testability: Extracting Dependencies Members Public

In the earlier post, Removing Unnecessary Dependencies, we saw how having an unnecessary dependency hinders testability. In this post we will see just the opposite of that - extracting functionality out of a class and creating another class to separate responsibilities, making it easier to test and adhere to Single

Rahul Pulikkot Nath
Rahul Pulikkot Nath
Testing

Refactoring Test Code: Removing Constructor Dependency Members Public

In the earlier post, Removing Unnecessary Dependencies, we saw how having an unnecessary dependency hinders testability. In this post we will see how the test code changed by the refactoring we did for removing the unnecessary dependency and explore ways to control these changes. Impact on Tests by the Refactoring

Rahul Pulikkot Nath
Rahul Pulikkot Nath
Testing

Refactoring to Improve Testability: Removing Unnecessary Dependencies Members Public

Nowadays I am trying to stick to TDD (with the test first approach) and have found it to be of great help. One of the biggest reward doing TDD is that it helps me to stay in the flow and regain speed faster after a distraction. This post explains how

Rahul Pulikkot Nath
Rahul Pulikkot Nath
Testing

Replace ‘Introduce Local Extension’ With ‘Extension Methods’ Members Public

Introduce Foreign Method(IFM) and Introduce Local Extension(ILE) are two refactoring techniques that comes handy when you need to add functionality to an exisiting class,source code of which is beyond your control. IFM is used when its just one or two functions that you need to add to

Rahul Pulikkot Nath
Rahul Pulikkot Nath
Refactoring

TDD and Refactoring Members Public

Over the days I have been reading on Test Driven Development(TDD) and it seems really interesting methodology to go with as per development is concerned. Basic of TDD is that the development process relies on 'tests', that are written prior to code. Sounds astonishing!!!! It might to

Rahul Pulikkot Nath
Rahul Pulikkot Nath
Refactoring