在C++中,由于私有继承不被视为一种is-a关系,它应该如何在类图中显示,如果它被显示为has-a关系,那么它如何在组合和私有继承之间进行区分?
我有一个PHP项目,其中有很多类,在Zend Naming Convention之后有许多文件夹中有很多关系.
我使用NetBeans IDE 7.1.我在Windows 7下工作.
我需要看到类关系的图形表示,可能在不同的深度和不同程度的复杂性.此外,如果图中的类是可点击的,那将是很好的.我不一定需要生成文档.
NetBeans是一个非常棒的IDE,具有许多功能.事实上,它识别类依赖性,并且假设它有某种方式以图形方式查看这种关系,本地或通过插件是明智的.这样的插件存在,但适用于5.5版.我有7.1,它不兼容.失败.
一个简单的谷歌搜索将Enterprise Architect作为一个全能的,完全全面的工具来解决这些问题.所以,我下载并安装.我不打算详细介绍如何无法理解如何做任何事情,以及教程如何吹嘘软件可以做什么,但很少说出如何做.
所以,我导入了源代码.它生成了许多不同的类并解析了所有成员.此外,它还生成了类图."完美!",我虽然,但唉.类图仅显示类之间的关系,其文件位于同一源文件夹中,尽管关系在类的属性中可见.搜索关于如何将所有这些图合并为一个的文档是不成功的.失败.
注:我这个人之前创建的并行线程在这里.
找到了这个PEAR工具.看起来不错.因此,我阅读了有关如何从各种来源为我的设置安装它的文档,并运行它.首先,我使用了html输出格式.大!很多带索引的文档,bla bla bla.但是,在我想要的方向上做得最好的是:
毋庸置疑,我想,这是我实际需要的非常糟糕,超级简化的版本.结论:失败.
但是,PHP_UML也可以生成XMI.哇.非常好.我可以存储我的关系并以不同的方式查看它们并与其他人交流.
所以,我将它导入Enterprise Architect.结果:与之前的Enterprise Architect一样,只有没有类图.只是课程.据我所知,我现在可以手动创建关系.史诗失败.
通过我搜索解决方案的某个地方,我偶然发现某人说他们使用的是ArgoUML.已下载并已安装.导入的XMI有些麻烦(必须明确地将版本更改为1).失败(见尝试3).
这样一个看似微不足道的任务,但又如此困难.我是否必须完成整个列表,尝试每个应用程序?
我最近一直在寻找一种从UML图生成Java代码的工具.我已经看过Papyrus和Omondo的Eclipse了.我遇到的问题是在许多加载了JPA和JAXB类的项目中需要该工具.这使得Omondo和Papyrus都变得简短,因为注释和吸气/定位器非常重要.我正在寻找的是一个能够维护这些项目的图形类图的工具,如UML图,然后根据需要将其转换为Java代码.
我正在寻找的是一个可靠的类图 - > Java代码工具,最好是基于UML的,它支持(尽可能多)以下内容:
如果有人知道一个工具(它不一定是UML类图),我非常想知道它.
我在Visual Studio 2017中有一个C#类库项目,我想为其创建一个类图.已安装类设计器.查看命名空间或类视图中任何类的上下文菜单,我在视图的菜单栏上看到"视图类图"选项以及相同的按钮.
但是,当我单击按钮或上下文菜单项时,似乎没有任何事情发生!回到Solution Explorer视图,我可以看到ClassDiagram1.cd文件已添加到项目中.尝试打开此文件会导致出现错误消息:
此项目类型不支持类图.
将类图文件添加到C#,VB或C++项目并尝试再次打开它.
我很高兴能够自己添加图表,而不是在无法生成的情况下生成图表.但我也无法将空白类图文件添加到项目中,因为该文件类型未出现在"添加新项"表单的文件类型列表中.
如何为类库中包含的类创建类图?或者类库可能不适用于库?如果后者是这种情况,那么有任何来自Microsoft的信息A)确认这一点,并且B)解释为什么程序中的类可以被图解而不是库中的类.(我已经花了一些时间在谷歌搜索这个问题,但没有找到任何特定的类库)
我可以在下面这两张图中改进我的设计吗?如果是这样,怎么样?
我在图表中使用关联类感到困惑.我应该使用它们吗?
图1

图2

当我通读UML规范时:
class has a set of attributes/operations
and data type has a set of attributes/operations
Run Code Online (Sandbox Code Playgroud)
1)关于数据类型的属性/操作这意味着什么?
因为我不知道这样的数据类型如何具有属性和操作?
2)类和数据类型之间的主要区别是什么?
我想为我的visual studio项目生成一个带有关系的类图.我打开了我的解决方案,添加了一个新的ModelingProject,添加了一个新.classdiagram文件但是当我想将我的文件夹或我的类拖到图表布局上时,我得到了"不可用"的标志.
有没有人知道如何解决这个问题?

这是我的代码片段
public class Notation : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private Notes _note;
}
Run Code Online (Sandbox Code Playgroud)
如何正确编写 public event PropertyChangedEventHandler PropertyChanged; UML类图?
首先,我认为是:
+ PropertyChanged:PropertyChangedEventHandler
但后来,我意识到它并不代表event代码的一部分.
任何的想法?谢谢
我想用Java枚举(枚举)创建一个UML图,它有一个或多个属性,但我对如何做到这一点很困惑.
例如,枚举可以像这样声明:
public enum Enumeration_type {
LITERAL_A("attr1_value", attr2_value, attr3_value),
LITERAL_B("attr1_value", attr2_value, attr3_value);
final String attr1;
final type_1 attr2 = initial_value_1;
final type_2 attr3;
Enumeration_type(String attr1, type_1 attr2, type_2 attr3) {
this.attr1_value = attr1;
this.attr2_value = attr2;
this.attr3_value = attr3;
}
}
Run Code Online (Sandbox Code Playgroud)
没有属性,很容易:
+--------------------+
| <<enumeration> |
| Enumeration_type |
+--------------------+
| LITERAL_A |
| LITERAL_B |
+--------------------+
Run Code Online (Sandbox Code Playgroud)
但是你如何优雅地为它建模呢?应该是这样吗?
+-----------------------------------------------------+
| <<enumeration>> |
| Enumeration_type |
+-----------------------------------------------------+
| attr1: String |
| attr2: type_1 = initial_value_1 |
| attr2: type_2 | …Run Code Online (Sandbox Code Playgroud)