Over a million developers have joined DZone.

Complex Refactoring in Simple Steps: Part I

DZone's Guide to

Complex Refactoring in Simple Steps: Part I

In this series we examine how to refactor complex code. In this installment, we take a look a method that exhibits the Long Parameter List and Data Clump smells. What can be done?

· Agile Zone
Free Resource

Speed up delivery cycles and improve software quality with TestComplete. Discover the most robust automated testing tool for end-to-end desktop, mobile, and web testing. Try TestComplete Free.

Matthew Butt demonstrates how to compose simple automated refactoring steps in ReSharper to refactor code to better designs.

In this episode, we look at a method that exhibits the  Long Parameter List and  Data Clump smells. We  Extract Class from Parameters to create a parameter object, and then, spotting  Feature Envy, use  Move Instance Method to shift the behavior to the new class. We finish by tidying up the method object to remove generated code that might tempt us to break encapsulation.

The code used in this video can be found on GitHub.

This article was first published on the Codurance blog.

Release quality software faster with TestComplete. Discover how to decrease testing times and expand test coverage with the most robust automated UI testing tool. Try free for 30 days.

simple ,better ,automated ,refactoring ,parameter ,list ,designs ,programming

Published at DZone with permission of Matthew Butt, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.


Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.


{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}