在 Java 类结构中表示工作流的最佳方式是什么(工作流被视为一系列操作)?让我们假设一个类 Workflow 包含 Action-objects。我认为这可以通过使用 LinkedList 来实现,但是无法进行分支。
我的目标是表示类似于 UML Activity 图的结构,这意味着它也应该可以定义决策、拆分和连接。
另一种方法是使用 BuildingBlock 的 LinkedList,它定义了一个接口(interface)。然后创建额外的类来定义 Desicions 和 Splits 或 Joins 实现这个接口(interface)(splits 和 joins 可以表示为一个容器,其中包含更多带有 BuildingBlocks 的 LinkedLists)
您如何看待这个想法或者您知道更好的解决方案?
如果您知道我可以用于谷歌搜索有关该主题的更多“关键字”,请不要犹豫,发布它们!
最佳答案
我建议看一下 Microsoft 在实现 Windows Workflow Foundation 时使用的类层次结构平台(而不是完全重新发明轮子)
源代码已开放供检查,参见例如http://referencesource.microsoft.com/#System.Activities/System/Activities/Statements/FlowSwitch.cs
他们已经想到了Workflow Designer与图形语言等
Workflow Foundation 平台在 Windows 操作系统之外并不可用,如 corresponding Mono project 的状态所述
因此,如果您的目标操作系统是 Windows,那么您可以只使用 .NET。如果您的目标平台不是 Windows,那么您至少可以看看。 C# 和 Java 是复制/粘贴友好的语言。
关于java - 表示工作流的类结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24407764/