Sunday, April 06, 2008

The Quest

The quest for a free UML tool has been going on for the past few years until I chanced upon StarUML. Capable, with support for UML 2.0 constructs except Timing Diagrams, this is a good tool compared to others like ArgoUML.

StarUML is developed using Delphi and is COM compliant so that plugins exist to extend the existing framework to support or provide configurability.

The base installation supports document generation and well as rudimentary reverse engineering support. I tried reverse engineering a few C# code and only a few classes were imported. This being an open source project, there is no stopping you from acquiring the source and fixing any open issues and submitting a patch.

The UI is snappy and unlike other tools that are over 250 MB in size, this is 1/10 in comparison. A great tool for quick modeling.

Thursday, April 03, 2008

Visual Studio - tread safely

Wizards - A slowdown to productivity?

Had a chance to write a few small apps in C# using the IDE. One thing that felt a bit daunted was the amount of code that is being generated automatically specifically with the GUI initialization code and the resx files.

Intellisence? Not for the 'declare later' group

The second is how intellisence interferes with your code. If you use a variable without declaring it (say in a for loop), intellisence inserts the nearest matching class or type name or variable in code, which I have to backtrack to remove and the go back and declare the variable and then specify that in my loop.

The mystic resx files

Whenever you start including images or other resources, they get compiled as a resx file which is xml file with the binary data embedded into it (using base64 encoding?). Though I have included the core resource files in the project, the resx files becomes difficult to manage, especially when multiple members are working on a project where it gets difficult to trace the changes made by someone else.

So, you've got your own quips about the IDE? Share them as comments in my blog...