问题描述
因此,我在几个 Python 模块中有许多免费函数,我需要创建一个 UML 类图来表示我的整个程序。我的问题是我能否以某种方式在类图中表示一个自由函数,或者我是否需要创建一个实用程序类以便我可以在我的类图中表示它们。
解决方法
你需要有一些类来表示一个“自由函数”。你很自由地知道如何做到这一点。我通常做的是创建一个定型类。可以为此使用«utility»。其他任何方法都可以,但当然您需要在您的域中记录下来。
通常构造型绑定到配置文件。但是大多数工具允许使用自由定义的刻板印象。虽然这不是 100% 的 UML 兼容,但它是一种很常见的做法。
,即使 UML 是在一个时期构思的,当面向对象被大肆宣传时,并不意味着它不能用于函数。许多人没有意识到,UML 中的行为是一个类。因此,任何行为都可以显示在类图中。只需将元类放在名称上方的 guillemets 中,例如«activity»
。如果您打算用活动图来描述功能,那是完全合理的。但是,如果您打算用(伪)代码或自然语言来描述它,您可以使用 «function behavior»
,它被定义为没有副作用的行为。或者,如果它有副作用,只需使用 «opaque behavior»
。