Introducing static methods and extension methods
Now that we’ve explored some of the more functional aspects of method refactoring, let’s take a look at some of the features that helped revolutionize .NET: static methods and extension methods.
Making methods static
Sometimes, your classes will have methods that don’t work directly with instance members (fields, properties, or non-static methods) of that class. For example, FlightTracker
has a Format
method that converts a DateTime
to a string resembling “Wed Jul 12 23:14 PM”:
private string Format(DateTime time) { return time.ToString("ddd MMM dd HH:mm tt"); }
Here, Format
doesn’t rely on anything other than the parameters it is provided to calculate a result. Because of this, we can make Format
a static method.
Static methods are methods associated with the class itself and not with an instance of the class. As a result, you don’t need...