用于JavaScript和Electron应用程序的Uml / sequence / package / ...图表替代方案?

问题描述 投票:2回答:1

我的问题是,为了可视化和Electron / JavaScript应用程序,我是否可以绘制任何类型的图表?

我需要替代不同的uml图,如类或包图,但由于JS是基于原型的,它不像Java或C#,我不知道我能做什么。

我可以做的唯一一个是序列图,但我应该(可能必须)制作其他图表。

javascript electron uml diagram class-diagram
1个回答
0
投票

首先,您没有义务记录UML图中的所有内容。因为工作软件比综合文档更重要。但是,UML非常有用,可以突出显示在代码中无法轻易找到的软件的一些不那么重要的方面。而且我的建议是关注这些方面。

现在你应该在UML中做什么都取决于你打算在模型中表示什么,以及你如何使用js。

UML区分structure diagrams以显示软件和behavioural diagrams的静态视图以显示其动态。

Structural diagrams

这对你来说可能不那么有吸引力,因为JS是prototype-based并且在输入逻辑方面提供了很大的灵活性,这与UML的基于静态类的视图相反。

尽管如此,您仍然可以从类的概念中受益,并使用class diagrams来显示您的设计意图(即您对对象分类的心理视图)或用于实例化对象的原型(特别是如果您设计一些对象基本上作为原型,使它们事实上成为课程的代表)。当然,如果你的JS设计完全不是面向对象的,那么将你的程序映射到OO概念是没有意义的(参见here)。

请注意,传统的object diagram可能对您更有意义,因为它允许解释对象而不是类之间的关系(另请参阅here

在这两种情况下,您可能对usage dependencies特别感兴趣,它有助于将静态元素(即对象或类)与行为意图联系起来。

最后,可以使用package diagrams来展示你的.js文件及其依赖项的大图。它不是传统java包的意义,但也可能有用。

Behavioural diagrams

在这里,我假装所有这些图表都适合你。

我想到的第一个是sequence diagram。因为它有助于可视化多个对象之间的预期交互,而这些只是通过浏览代码很难找到。

在某些情况下,state machine diagram也可以提供帮助。如果行为取决于某个状态变量,或者如果要显示对象的完整生命周期,则这是特别有意义的。

最后,你可以考虑activity diagram。如果要在整个系统中显示控制流或对象流,这些特别有用。如果你不熟悉它们,并简化到极端,它是一种超级流程图,但箭头不是jus代表“下一个操作”,但也可以代表在操作之间传递的对象。

© www.soinside.com 2019 - 2024. All rights reserved.