In my view--and I think everyone is really saying this--the key is knowing how to design and write your code effectively in the first place, so that the refactoring required is pretty minimal. Refactoring will inevitably need to be done at some point, and IDEs can help you more quickly do it with automation, assuming you're comfortable with the tool. As mentioned, code completion helps avoid annoying oversights (forgot to write that getter or setter, misspelled or miscapitalized that method, forgot an import statement). But no matter what the IDE, I think you'll almost always have to do some refactoring by hand.
When I learned Java in school (which was not that long ago), I was taught to use a text editor and run the compiler at the command line. I had to find all my own bugs and fix them and be quite aware of what I was doing when I had to refactor and move code around. I was constantly referencing the API when using methods and had to compile to see if I'd gotten it right. It was time consuming, but after doing that for a while, I think I became a better programmer. For me, this approach was a great way to learn. Now, I work in Eclipse (and Flex Builder) for school and work and have only recently started using some of the refactoring functionality. It does save me a little time. But a mix of tools is great. I also use Notepad++ for general text editing, working in HTML and CSS, comparing files, and looking at syntax-highlighted code quickly. Many IDEs won't collapse/fold certain types of code entities (like XML elements, or cases of a switch block), but I like that Notepad++ will basically fold any block of code. -- You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/javaposse?hl=en.
