我很好奇人们发现了哪些工具可用于构建流程图。显然MS Visio和OmniGraffle浮现在脑海中,但他们都感到非常臃肿,并且往往强调文档格式化/打印方面,而不是帮助组织实际逻辑。那些开发人员会推荐其他什么吗?
我希望找到一些相当简单的东西,让我在处理复杂的逻辑时能够动态地将流程图放在一起。我不关心格式化或字体之类的东西,只是在我完成它的过程中帮助我保持逻辑有序的东西。甚至可以安排图表本身的东西,只是允许我指定分支的位置和要检查的内容等。
任何操作系统都可以,但我个人倾向于OS X应用程序,因为这最近是我的主要工作环境。
答案 0 :(得分:8)
看看graphviz。
示例:
digraph finite_state_machine {
rankdir=LR;
size="8,5"
node [shape = doublecircle]; LR_0 LR_3 LR_4 LR_8;
node [shape = circle];
LR_0 -> LR_2 [ label = "SS(B)" ];
LR_0 -> LR_1 [ label = "SS(S)" ];
LR_1 -> LR_3 [ label = "S($end)" ];
LR_2 -> LR_6 [ label = "SS(b)" ];
LR_2 -> LR_5 [ label = "SS(a)" ];
LR_2 -> LR_4 [ label = "S(A)" ];
LR_5 -> LR_7 [ label = "S(b)" ];
LR_5 -> LR_5 [ label = "S(a)" ];
LR_6 -> LR_6 [ label = "S(b)" ];
LR_6 -> LR_5 [ label = "S(a)" ];
LR_7 -> LR_8 [ label = "S(b)" ];
LR_7 -> LR_5 [ label = "S(a)" ];
LR_8 -> LR_6 [ label = "S(b)" ];
LR_8 -> LR_5 [ label = "S(a)" ];
}
产生
(来源:graphviz.org)
它特别适合从程序中生成。
答案 1 :(得分:6)
纸和笔怎么样?还是白板?
有时物理对象的轻松和触觉反馈是最合适的。
答案 2 :(得分:2)
虽然你把它列为臃肿但我仍然使用OmniGraffle。
对于快速流程图,框中带有线条的一系列方框就足够了,但其余的格式化选项以后会很好用。我发现我花时间绘制的任何流程图通常都会在某个地方的文档中结束。即使我只是想了解一些困难的代码,我最终得到了一个单页文档,试图解释那个必须深入挖掘的下一个可怜的骗子的代码。
答案 3 :(得分:2)
我在Linux上使用Dia。它非常轻巧,使用简单,但它不会自动定位元素,我发现界面有时会有点抑制。
dia.darwinports.com有一个OS X端口,虽然我没有使用它。
答案 4 :(得分:1)
Open Office的平局也很不错。我用它来创建从简单的流程图到复杂的谱系树的所有东西。
答案 5 :(得分:0)
我没有做很多复杂的流程图,但是当我在流程图或组合数据流时,我倾向于使用Powerpoint。这很简单,我知道的很好。
答案 6 :(得分:0)
我使用的是Microsoft Visio 2003,我不需要它的所有额外垃圾,但我喜欢它的简单用户界面。
答案 7 :(得分:0)
我通常不做流程图,但做的是状态图。 我在白板上做高水平流动, 然后降低水平,在A3纸上。
一旦正常工作,我在Visio中创建它, 这将成为发布文档的一部分。
答案 8 :(得分:0)
对于OmniGraffle,它的免费版本是否足够好?即在试用14天后,它仍然是一个不错的选择吗?
我正在尝试使用yEd。
答案 9 :(得分:0)
我不使用它来编程相关的任务,但我不明白为什么它不起作用。 Mindjet Mindmanager是创意思维导图的绝佳工具。 (但它可能相当昂贵)