Integrated Developing Environments
What is and IDE and why would I want one?
An Integrated Developing Environment or IDE will back a big difference to the ease with which you develop a program. An IDE will allow you to easily navigate your way around your different classes and their methods. Rather than scroll through reams of text trying to find a variable or method, click on its name in the navigation frame and be brought directly there. Want to know more about classes you're importing? Try hitting F1 with the cursor on the package name and have the API documentation shown for you. Change the name of a method and have the IDE automatically update the method name in every place it's called.
Not all IDE's will have all of the features I've just mentioned, but you probably get the idea. Efficient use of an IDE will take a lot of the tedium out of programming and should lessen development time.
Choosing an IDE
As you'll probably have noticed there are many IDE's available. How are you going to know which one to chose? I posted this question on comp.lang.java.software and comp.lang.java recently and the following is a summary of the replies I got.
-
A lot of people agree that IBMs Visual Age is the best, especially for large projects. Its environment takes a little while to get used to, but once you are used to it, its hard to go
back to a 'normal' file based IDE. VA uses an object-oriented repository that organizes your code in terms of projects/packages/classes/methods. If you change a piece of code (ie. change a method name), VA can go through the entire repository and alter any code that used the old method name and change it to the new one. When searching for a type, you can specify whether you want a declaration, reference, etc... It really uses the repository to its advantage. An entry level version of Visual Age that does not support Servlets or JSPs (Java Server Pages) can be downloaded for free from www.ibm.com .
-
Sun's Forte for Java is gaining a following but it needs a lot of horsepower. Apparently it's a very productive API. But having said that there seem to be a fair few people who'll swear against it just as strongly as those who swear by it. Forte can be downloaded for free from www.sun.com .
-
CodeWarrior is as stable an IDE as you'll find. (Some of the IDE's crash fairly often particularly when debugging and particularly with an underpowered machine). CodeWarrior can be downloaded from www.metroworks.com .
-
Visual Cafe is a competent but power hungry IDE - you'll really need 256MB of RAM to use it. Visual Cafe can be downloaded from www.webgain.com .
-
Borland's JBuilder is another competent IDE, it's also free. It compiles code very quickly, but running the debugger is not a satisfactory experience - expect it to crash every few attempts. JBuilder can be downloaded for free from www.borland.com .
-
Many of these IDE's tend to run slowly as they are written in Java. If you're looking for something a bit faster you could try MED from www.utopia-planitia.de.
-
Finally I should mention both Kawa and Textpad. If you're not developing a large project but just want to tinker around with Java, Textpad from www.textpad.com comes highly recommended. On the next level up Kawa from www.tek-tools.com is a simple but still powerful IDE.
Visual Developing
One aspect that I haven't mentioned at all so far is that of Visual Development. This allows you to focus on how your GUI should look without getting bogged down in detail - you click and drag - the IDE generates the code. Using visual development tools undoubtedly speeds up development, but still has detractors. If you're just starting to learn to use Java, learning how to write your own GUI is probably a good idea.
As far as visual development with the above IDE's goes:
- Visual Age can be a bit unstable and the code it generates is unreadable.
- The code generated by Sun's Forte for Java is very readable.
- Kawa isn't visual development capable.
And Finally...
So there you have it, it's hardly an exhaustive list, but it gives you an idea of what to expect. For what it's worth, I'd feel that Visual Age is the way forward if you're willing to invest quite a bit of time in learning how to use it. If not, try out JBuilder - a few niggling bugs aside, you'll probably come to like it and it's fairly easy to use. For simple development use Textpad.
Developing Java
Menu
Last updated August 15th 2000 |