[ANN] SequencePlugin ver 0.1
SequencePlugin generates the sequence diagram of the current method.
For more details, visit plugin web page at:
http://www.intellij.org/twiki/bin/view/Main/SequencePlugin
I know the plugin must have a lot of bugs, so please let me know if you
get any. BTW, currently it runs only with IDEA build 818.
Thanks.
/kesh
Please sign in to leave a comment.
this is a very COOL plugin. You have no idea how long i've needed something like this. Seems to export to png fine on my machine :)
Thanks for the plugin
This is extremely cool, and I offer the highest possible applause: Feature Requests and Bug Reports.
1)An option to filter out calls to "this" whether implicit or explicit would be handy. A suboption to filter only private methods would be useful as well.
2) Clicking on a call line (or just a method name) should take you to the point of the call, just as clicking on a method box takes you to the method or a class box takes you to the class.
3)It looks as though "display getters and setters" is filtering out anything starting with "get", "set" or "is". This is too strong. There's a Psi utility class "PropertyUtil" which probably will give you better results.
4) Indications of multiple return points would be very cool. Indications of exception throws and catches would be godlike.
5) If you've already got a sequence diagram open, attempting to open up a different one hangs the application.
6)Configurable colors would be very useful, as the current choice is kinda ugly. Also, are you doing something nonstandard with fonts? They look anti-aliased on my screen, even though I have anti-aliasing off. (Alternatively, it could just be a different font family or size...)
Um, the parent of this post is by me. Don't know why ITN put me as an anonymous guest.
--Dave Griffith
itnadmin@jetbrains.com wrote:
Added in todo list.
Added in todo list.
I will look at it. Thanks for suggesion.
Can you elaborate on this one a little bit? I'm not sure I've understood
what you meant.
I don't see this bug. Any exceptions logged?
Added in todo list.
Dave, thanks for suggetions.
/kesh
Yes, the font and antialiasing are currently hardcoded. They will be
configurable in the next version.
/kesh
itnadmin@jetbrains.com wrote:
What I had in mind here is having multiple back-arrows from a given method call, one for every return point. This would give a slightly richer visual indication of the control flow within and between methods.
Going farther, you could add a back-arrow for each "throw" as well. These would start at the point where the exception is thrown, and point back to the position temporal location of where the exception is caught. Ideally, the arrow would be tagged with the class of exception thrown. This is trickier, as it involves statically determining if and where the exception is caught in the method stack but should be doable, and very valuable.
--Dave
Sorry, I've overgeneralized. It only seems to be happening on one particular method. No stack. I'll see if I can figure out more.
--Dave
Dave Griffith wrote:
>>4) Indications of multiple return points would be very >cool. Indications of exception throws and catches would >be godlike.
Got it. I wander will it clutter the diagram? Anyway I will add it to my
todo list as well. I'm not sure how must work it will require. We'll see.
/kesh
Great plugin! I've been hoping someone would write a plugin like this for a
long time.
Thanks a lot.
Andrei
"kesh" <dummy@dummy.com> wrote in message
news:bc2fql$3tf$3@is.intellij.net...
>
>
>
>
>
hmm. am I the only one who gets more from a source code than from a sequence
diagram?
--
Dmitry Skavish
-
Boston, MA, USA
tel. +1 781 910-3810
http://www.jzox.com
http://www.flashgap.com
Dmitry Skavish wrote:
>> Great plugin! I've been hoping someone would write a plugin like this
>> for a
>> long time.
Any examples?
/kesh
for me looking at source code is a totally different level than sequence diagrams. Sequence to me is "what is doing it" and code is "how it is doing it". IMHO sequence decreases the amount of time it takes me to understand someone elses code
kesh wrote:
>>> Great plugin! I've been hoping someone would write a plugin like this
>>> for a
>>> long time.
>>
>>
>>
>> hmm. am I the only one who gets more from a source code than from a
>> sequence diagram?
>>
Phew, I thought you have found a bug in the plugin :-).
Well sure, sometimes it is better to look at the code if you are looking
for specific details. But sometimes the code is too much detailed, when
you actually need to look at the program from the high level.
/kesh
There is something else to remember. If a method is too difficult to
understand for a human being (and I don't mean people that write whole
programs in a single 10000 lines method...), then it might mean that it
needs to be broken to understandable parts...
I think this plugin is awsome for its visual drill down capabilities that
are great for OO programming.
Amnon
"kesh" <dummy@dummy.com> wrote in message
news:bc2tts$v09$5@is.intellij.net...
>
>
>
>
You're able to understand the interactions of 10 classes just by looking at one source-code view. Sweet. I want you on my next code read!
Seriously, sequence views provide a quick high-level understanding of multiple-class interactions. For understanding process-centric (as opposed to data-centric) designs, they are invaluable. Yes, you need to have the source available as well, but sequence diagrams (and other visualizations) are great for giving you ideas of where to look in the source