Ty zde uvedené příklady nejsou zrovna nejšťastnější, přišly mi zmateně zapsané a autor z nějakého divného důvodu nepoužívá odsazení, které kód taky hodně zpřehledňuje.
Plantuml používám občas v práci, nejčastěji v kombinaci s webem http://codeuml.com, který zobrazuje "live" náhledy na to co právě píšete.
Plantuml je docela jednoduchý a teoreticky v něm můžete dělat i přesnější pozicování, prakticky však ten router stojí za hovno a trvá mi někdy třeba půl hodiny, než ho dokopu k tomu co po něm chci (například umístit dva elementy vedle sebe, i když nejsou propojené). V takových chvílích lituji, že jsem nepoužil nějaký klikací tool, kde bych prvek prostě vzal a přesunul myší, místo abych se spoléhal na demenci routeru a snažil se to nějak ohackovat.
Příště zkusím použít graphviz, na který jsem nedávno někde narazil, zběžným pohledem vypadá dobře.
No, graphviz jsem opustil, protože je vcelku peklo to "napozicovat", teda kromě toho, že výstupy jsou hnusné (subjektivní, já vím) ...
Teď zkouším toto http://www.yworks.com/en/products/yfiles/yed/
Pro mne to má 3 zajímavé vlastnosti:
- umí to "generovat" diagramy podle "tabulky vztahů" a to včetně typu nodů a hran
- lze exportovat do XML, takže se s výsledným diagramem stále ještě dá automatizovaně pracovat
- na co nejde použít ani 1. ani 2. způsob, to lze udělat v gui ...
- a vlastně ještě jedna vlastnost, je to obecné, ne pouze UML