学习UML的最佳来源是什么?

学习UML的最佳来源是什么?,uml,Uml,学习好的UML设计的好方法是什么?您多久绘制一次图(静态类图除外)?学习它的最佳来源是什么? 我不知道,这取决于球队有多大。我认为类/序列/用例是我最常用的。最重要的是不要过度使用图表,因为主要目标是帮助团队之间沟通,帮助以同样的方式理解事物,而不仅仅是制作一些无用的图表文件,而不是不使用它们 然而,由一组团队开发的非常复杂的系统,显然需要更多的图表,我认为,只是为了确保每个人都知道他们在做什么,以及事情在系统中是如何关联的。现在有很多很好的工具可以帮助建模。我认为Martin Fowler的

学习好的UML设计的好方法是什么?您多久绘制一次图(静态类图除外)?学习它的最佳来源是什么?

我不知道,这取决于球队有多大。我认为类/序列/用例是我最常用的。最重要的是不要过度使用图表,因为主要目标是帮助团队之间沟通,帮助以同样的方式理解事物,而不仅仅是制作一些无用的图表文件,而不是不使用它们

然而,由一组团队开发的非常复杂的系统,显然需要更多的图表,我认为,只是为了确保每个人都知道他们在做什么,以及事情在系统中是如何关联的。现在有很多很好的工具可以帮助建模。

我认为Martin Fowler的书是学习UML语法的最好的书。它简明扼要,信息密集


不幸的是,熟悉UML语法与了解如何设计是两码事。

我曾参与过一个项目make,我们使用Enterprise Architect制作UML图,我们使用C#源代码对其进行了反复(正向和反向工程)

它(UML)不擅长定义每个方法的实现(使用序列图),但定义接口和类的签名(即方法的声明,而不是定义)是可以的

它很有用,因为您可以:

  • 显示一组类如何交互的图表(而对于源代码,您一次只能看到一个类)

  • 不同类别的不同图表;有时同一个类可以出现在多个图表上


这是针对一个需要创建设计文档的项目,通过设计从用例中进行跟踪。

+1:UML不是代码的替代品。你可以尝试达到“用图片编程”的详细程度,但这没有帮助。设计也是如此。制造太多细节或太抽象,使你的UML变得无用,这很容易让人忘乎所以。UML与工程图纸不同。有些人认为他们应该这样做;我认为他们错了。@duffymo,我怎样才能用uml进行更好的设计?uml是无关紧要的;它只是一种交流的符号。盒子和箭头就足够了。真正的问题是:“我怎样才能做得更好?”答案是:从你糟糕的设计中练习和学习;研究好的设计并模仿它们。@uzay95:“设计的第一项资产是记录和讨论替代可能性的好记法”。使用一个好的工具进行设计是一个互动的过程,因为这个工具,特别是符号会给你反馈,显示出很难注意到的含义和关系。这里还有一个很棒的教程,可以学习UML2.0的各个方面,所有这些都用简单的术语解释: