我们如何在UML图中表达概念?

时间:2014-06-24 04:21:22

标签: c++ uml c++-concepts

UML Class Diagram是否支持表达Concept?
另外,还有其他表示概念的图表吗? 如果出现误解,我的意思是C ++和泛型编程中的“概念”。

3 个答案:

答案 0 :(得分:1)

基本上,这个问题可以通过回答"基类"来回答。题 : " UML是否会尝试使其与C ++一对一?"

答案就是" no"。

这是一个非常常见的误解,可以满足人们寻找在UML或任何其他C ++特定事物中表达指针的可能性。你不幸的是找不到它。

历史上,误解源于C ++代码生成引擎的可用性,这些引擎随附一些UML建模工具。所有这些代码生成引擎都带有自己的编码模式,以解决从模型到代码的过渡问题。仅仅因为转换模式本身没有标准。

UML来自OMG,OMG有(Corba)IDL-to-C ++的生成模式文档,但UML-to-C ++没有。

答案 1 :(得分:0)

在很快阅读Wikipedia explanation of C++ "concepts"之后,它看起来像是与generic classes and type constraints in C#具有相同目标的工具

如果我理解正确,那么请按照旧的Stack Overflow问题Representing a C# Generic Method in a UML Class Diagram进行操作,结果证明您应该按照@Aleks

的建议检查http://www.uml-diagrams.org/template.html

基本上我的意思是按照您通常的方式对接口和类进行建模。只需使用模板注释,您还可以使用虚拟依赖关系绘制一些类型限制,模板中使用的形式参数之间的继承关联

答案 2 :(得分:-1)

您可以在UML中显示概念使用的所有结构 - 即函数,算法,类等。 但不是概念本身,因为它是一个创建语法的元素。

此外,您无法在UML宏,预处理器命令等中显示。

所有这些事情根本不属于模型,而是属于语言/语法/语法。还有其他工具可供他们支持。正式的语法,理论等等。是的,有图表。寻找"正式语法图"在谷歌,你会看到他们的大量。