考虑下面的两个图。 顶部在右端包含一个纯箭头,底部包含一个箭头,左端是菱形,右端是纯箭头。 伟大的书GoF有这两种图的用法。 我想了解钻石在第二种情况下表示的是什么,以及这两者中的哪一种给予Customer和Order之间更强的关联。 在这两种情况下, Customer类是否负责Order类的生命周期?
在这里,我还有另外一个关于聚合和关联的问题。 我想学习一些UML的基础知识,所以我开始阅读Martin Fowler的“UML蒸馏”。 我读了关于课程的两章,有一个我不能完全理解的东西我认为,那就是聚合与结合。 书中有这样的引语: 在UML之前的日子里,人们对于什么是聚合和什么是关联通常比较模糊。 无论是否模糊,他们总是与其他人不一致。 结果,许多build模者认为聚合很重要,尽pipe原因不同。 所以UML包含聚合(图5.3),但几乎没有任何语义。 正如Jim Rumbaugh所说:“把它看作一个模拟安慰剂” [Rumbaugh,UML Reference]。 我从这个引用和Stack Overflow上读到的主题可以理解,我使用这两个关系中的哪一个并不重要,它们意味着几乎相同,还是有任何情况下聚合而不是关联的使用是合理的和/或我不能改变一个到另一个而不改变一个类图的“含义”? 我是这样问的,因为这本书是从2003年开始的,有些事情在这几年可能会改变。
几年前,我们店里的每个人都对UML很疯狂 。 现在每个人似乎都冷清了。 如果在软件项目中仍然广泛使用UML,我很好奇。 如果是这样,这个用法是否仅限于白板? 你使用它的文件? 你使用工具从它生成的代码? 有关: UML是否实用?
我用xcode 3观看了一个video,该video显示了一个显示UML图的button“Design”,但是我找不到如何使用xcode 4进行操作。
在UML图上,代表模板类的正确方法是什么?
这感觉就像一个早期的文物,但UML肯定有它的用处。 然而,像极限编程这样的敏捷过程主张“拥抱变化”,这是否也意味着我应该减less文档和UML模型呢? 因为他们给人的印象是设置石头。 UML在敏捷开发实践中属于哪里? 除了初步的规格文件,我应该使用它吗? 编辑:发现这个: 敏捷build模潜在的工件
你怎么能清楚地说明序列图或类似图中的多个执行线程? 我还没有find任何明确的例子。 我看到的所有图都用来说明单个线程。 更新 :接受的答案是我看到的最好的例子,但它确实留下了一点点的要求。 我结束了在单独的序列图中说明线程。 我不确定序列图是否适用于多个线程。
我正在阅读Nutshell中的algorithm(O'Reilly),并在类图中看到了这个符号。 我的猜测是,这意味着会员是受保护的,但我想看看是否有人确切知道这意味着什么。
我现在使用NetBeans作为我select的IDE,它有一个用于UMLbuild模的插件。 在类图中,有一些称为Boundary Class , Control Class和Entity Class模型元素。 但是,我找不到它们的好定义,但是我确实在UML类图中find了这个网站 。
在UML类图中,关联关系和依赖关系有什么区别? 据我所知,一个关系比一个依赖关系更强大,但我不确定它是如何强大的。 任何例子将不止欢迎:)