#37 Option to display Property get/set modifiers

open
5
2010-02-04
2010-02-04
Matt L
No

Excellent Tool! I love how lightweight and super easy to learn it is. All other UML editors are ugly by comparison and overkill for my needs. You filled an important niche.

A minor suggestion: It would be really nice if there was an option to show independent access modifiers on C# get/set Property elements. I understand how the icon shows overall access, but I very frequently use Properties in a public-readonly manner, i.e.

public int MyProperty { get; private set; }
public int AnotherProperty { get; protected set }

It would be really nice if the private/protected-ness of the setter were obvious from the UML diagram. Right now you can learn that by drilling into the diagram blocks, but it's not obvious to the rest of the development team, especially if they only have a .png of the diagram.

You wouldn't necessarily have to append "private" and "protected" strings in the diagram... an alternative would be to italicize a private setter, or surround it in parentheses, etc. to indicate the setter is not public.

Again, thanks for a great tool!

Discussion

  • Balazs Tihanyi

    Balazs Tihanyi - 2010-02-05

    Thanks for the suggestion!

    What about writing a -/#/~ sign before the getter/setter? It would be much shorter than private/protected/internal, but without loosing the exact visibility information.

     
  • Matt L

    Matt L - 2010-02-06

    Works for me. My vote would be for the # symbol since it would be hard to miss. Or leave the character/string itself as an option. Might be clearer to put the symbol in both prefix and suffix... but I'm sure you'll see what looks best if/when you code it up.

     
  • Matt L

    Matt L - 2010-02-06

    Oops I just realized you were suggesting all three symbols to differentiate the various levels of hiding. I would use the visually strongest symbol (# imo) for private and the weakest symbol (-) for internal.

    Another option might be font size/color/italics/etc., but that might not be sufficiently expressive to differentiate all 3 modifiers. Glancing at your code, it also looks like it might require more significant modification to the code... I'm sure you already thought of it.

    Thanks again :)

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks