As we started our ReSharper refactoring push I got back to my refactoring implementor chair. Honestly, I like writing refactorings because there's one thing about them: however simple it looks there are always some special cases. Take inline variable: what can be simpler? Just replace all read usages of a variable with its initializer. But even here's the case when variable initializer is an array initializer (int[] a = {1, 2, 3}). Or take change signature: it's not quite simple by itself, but here comes special case: when changing signature of default constructor make sure that all implicit usages of it in derived classes become explicit now. These cases are partly why I love writing refactorings.
Ok, now back to extracting interfaces...
Posted by Oleg Stepanov at December 15, 2004 08:11 PM | TrackBack