Refactoring support for the Eclipse

It's amazing what results you can miss even if you search with Google. It's all a matter of what you are searching for. And which website you actually search for.

After some thought, I figured that it would be best to take a look at how the RDT: Ruby Development Tools are doing. So far they are one of the few open source projects that are moving along pretty well. They have some nice integration with the Eclipse project. And like it or not, the Eclipse platform offers one of the better environments for developing IDEs if you do not wish to waste too much time designing a GUI and all that. There is some pain involved with using Java and all that , but Eclipse itself can help you write Java in a more productive fashion.

Anyway, here is the thread in point. If you click on the link, they do have a decent Trac website for it. I have not downloaded the project yet but it seems that there has not been much buzz generated about this project. There was nothing much on the mailing list. And I don't think it is a good idea to point this project out on the Ruby mailing list since it is their project and they decide what to do. I have downloaded their nightly .pdf file describing what they are doing. We shall see how much they have covered. The table of contents does seem to address some of the main issues that I am concern with. And they claim to have done the Rename Local Variable (this is not the same as the more general Rename that goes look for all occurrences and finds out which are safe to replace) and Push Down Method. They have a few other of the normal refactorings that Martin Fowler discusses in his book.

After reading a bit more, it seems that this was a term project for the students. It was to be a fourteen week project but they are going to take it further and do it as a diploma thesis. All in all, I am pretty impressed with this project. Here is a group of developers that are doing all the "best practices" of software engineering. They have a repository, bug tracking, milestones, auto-generated integration tests and lots of unit tests.

Well, if they have gotten a refactoring tool for Ruby, then it means that I probably have to find something else to do. That is one of the pitfalls of choosing an "in" language. Almost everyone would want to get a hand in it.

Anyway, I am going to check out the source code for the RDT into a new Eclipse workspace. Hopefully I remember enough of the Eclipse plug-in development paradigm to understand the code. I left all my Eclipse books back home when I went back for the summer. The nice thing this time though is that I can develop on my Macbook Pro. Enough RAM, plenty of hard disk space and a speedy processor. And of course, Java 1.5 is now working nicely on OS X.

comments powered by Disqus