Content tagged with: refactoring
Kevin Rutherford talks about the challenges of refactoring Ruby code, and his open source tool ‘reek’ which automates the discovery of certain code smells in Ruby code.
This video removes the duplication in the add and subtract classes by introducing an abstract base class. The end result is a use of the template method pattern.
Video Producer: Brett L. Schuchert
In this episode we are going to take a look at another refactoring technique, the Extract Interface technique. This technique allows you to extract an interface from a class in order to break your concrete dependencies. By doing this you can provide yourself with better testing support as well as a better layer of abstractions.
These two videos show how to use the refactoring tools in Visual Studio.
Video Part 1
Video Part 2
An example of refactoring to clean up a python script.
Blog source of the video
Success on an Agile project relies heavily on the people in the trenches. Developers, testers, and product managers focused together, can deliver astonishing accomplishments in a short amount of time. Extraordinary results require discipline, motivation and alignment. Test Driven Development (TDD) and Refactoring creates the momentum to help developers organically adapt to an endlessly changing world. In this hands-on tutorial, you will see and try simple TDD and Refactoring exercises. The session is split in two videos.
Nature abhors a vacuum.Â It turns out she also abhors static dependencies (I have my sources).Â Static dependencies are the modern-day globals, often exposed through classes named “Helper”.Â I’ve certainly been guilty of overusing static dependencies in the past, with classes like “LoggingHelper”, “SessionHelper”, “DBHelper” and so on. The problem with static dependencies is that they are opaque to the extreme, enforcing a strong coupling that is impossible to see from users of the class.Â To demonstrate techniques for eliminating static dependencies, Ray Houston …
In this episode we are going to take a look at a refactoring technique outlined in detail in working effectively with legacy code. We will walk though this technique and take a look at how it can help you to create better and more maintainable code.
Agile development practices and good Object Oriented Design principles are supposed to enable unending, gentle modification of an existing codebase. Is this really true, though? In the course of 5+ years developing and evolving an open source framework, I’ve learned a lot of painful lessons about the issues that retard code extensions and modifications. I’ve also learned a little bit about the design decisions that dramatically increased my ability to extend the code. In this talk I’ll show several instances of how failing to heed design fundamentals introduced code …
In this screencast we will demonstrate how to use the Object Builder pattern to create and setup objects for tests. In the first part we discussed how to introduce the base class for the unit tests to improve readability and cleanness of code.