views:

169

answers:

5

I'm looking for an editor that can create class diagrams, similar to the typical UML class diagram, but specifically for java (so using java terminology; instead of terms like "generalization, realization etc", we use the java equivalents "interface, abstract class, extends etc"). I've looked into UML several times, but each time I've been turned off by the shear amount of "stuff" that comes with UML. I just want to be able to model my java classes quickly and intuitively, without getting bogged down by all the cruft that comes with UML.

Preferably, it would come with a source reader that can keep the diagram up to date, and with a few nice features like "show only public methods in this class" etc. As well, it would automatically "know" about the classes in the standard java library, and possibly even be able to read classes from jars.

Performance is also a big thing for me, I don't like having to wait 2 seconds for a popup menu to appear, or watch the diagram jerk crazily while resizing an element in the model.

What do you think, am I asking too much?

+1  A: 

A simple Java based applet editor Violet

GustlyWind
A: 

You can draw a simple class diagram with BOUML and afterwards generate appropriate Java classes. But this is just one way for the initial source generation.

For documentation purposes your source code can be visualized by Doxygen. This is generating documentation by the source. This is the other direction and also "one way".

If you need both directions you need a tool which supports round trip engineering. A few years ago I used Together (Borland) which was capable of that. But today I prefer to use my favorite text editor for creating and manipulating classes and I just use a separate tool to generate documentation (Doxygen for example).

Achim Tromm
+1  A: 

Probably one of the best tools in the market for diagrams (still UML) is the Netbeans plugin. Take a look here: http://www.netbeans.com/features/uml/index.html

Andrei Ciobanu
A: 

Not really Java specific, but OmniGraffle (http://www.omnigroup.com/products/omnigraffle) is a nice chart and diagram program. However it's only available for Mac OS.

Reimund
+1  A: 

There are plenty of tools offering UML capabilities for Java (although not all specifically designed for it). Review http://stackoverflow.com/questions/15376/whats-the-best-uml-diagramming-tool.

Dan