Safe refactoring is when your refactoring tool doesn't mess up your code.
Example: If you rename a method, a good refactoring tool should check that the new
name is not in conflict with some method already defined.
Some refactoring tools don't care about these things. It may be quite dangerous
to use them if your program is something more complicated than Hello World.
The
RefactoringTools are here now. I think it's time to start talking about
this issue. Maybe a Rubicon II (see
http://martinfowler.com/articles/refactoringRubicon.html) for safe refactoring?