程序员绘图利器dot

原文

作为程序员,我们离不开使用各种图形来描述软件。毕竟,图形描述方法比起直接看代码更加形象,更符合我们的思维方式。大多数的绘图软件,比如viso或者dia,都可以满足一般软件开发中对于绘图的需求了。无论是UML还是其他软件图,使用这些软件来制作都比较得心应手。然而,程序员作为软件的制作者,对于自己使用的软件的要求一般都会比较苛刻。我们总是在问自己,我们所使用的工具是最适合我们的吗能为我们带来最高的工作效率吗/p>

在制作软件图的过程中,我们一般关心的是这些图形的逻辑关系,而不是如何绘制他们(毕竟我们不是在画画)。比如,我们在制作类的派生关系图时,主要想描述的是类之间的派生关系。无论这些类图怎么摆放,只要清晰的表达出意思就可以了。所以我们希望绘图软件能够用最简练的方式让我们描述出图形的逻辑关系,而不用操心最终怎么表现。而且图形软件最好能根据不变的逻辑关系自动产生出想要的图形效果。

对交互方式上,图形软件不仅可以给人直接使用,并且可以给其他程序使用。这样我们就可以在其他软件中方便的加入绘图功能,使其自动化。这就要求图形软件应该尽量使用命令文本的方式,而不是GUI方式交互。如同操作系统的shell,命令行更适合程序员工作。

Dot就是这样一个适合程序员使用的绘图工具。

最早使用dot还是在制作3D engine的bsp/portal编译器时。编译器需要将原始的3D场景进行空间切分,构建一个bsp树,然后合并一些叶节点组成一些完整的空间区域,并为区域之间计算可见性portal。要想形象的看到最终生成的bsp/portal数据,我最终为编译器添加了输出dot的功能。输出后的bsp节点关系图清晰地展示了复杂的数据结构之间的关系,为调试提供了便利性。

程序员绘图利器dot

生成的结果:

程序员绘图利器dot
参考:http://www.graphviz.org/

来源:yuanlin2008

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2012年11月15日
下一篇 2012年11月15日

相关推荐