3 ms·
>The real refactoring work is done in your head. This has totally been my experience. Moving a method or variable up or down in the inheritance tree, extractin
by azanar 18y ago
>The real refactoring work is done in your head.
This has totally been my experience. Moving a method or variable up or down in the inheritance tree, extracting part of a method, inlining method calls: all of this is architectural refactoring. I've found the much of my refactoring time isn't spent in moving methods around and modifying signatures; it is spent in modifying the algorithms and data organization. Not organization in the sense of whether variable belongs in sub- or super-class, but in the sense of whether some subset of data should belong in a particular class, or some new delegate class I construct. That new delegate class might not be a subset of the class I'm splitting apart, so requires more than just some automated extraction process. I can't help but create a mental picture of all of this as a sort of architectural autopilot -- it can handle making minor course and altitude corrections, but still expects you to have thought about things before pressing the 'engage' button.
- modoc 18y agoThe guts of all application design and redesign (which is what refactoring really is) is always done in your head. That's true no matter what tools you use or don't.