Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
学习UML有什么价值吗?_Uml - Fatal编程技术网

学习UML有什么价值吗?

学习UML有什么价值吗?,uml,Uml,在过去的几年中,我看到UML提到了几个地方,但到目前为止,还没有一个令人信服的理由在工作中使用它。花时间和精力去学习它有什么价值吗?(我是RubyonRails开发人员。) 编辑:我也在寻找有关UML如何在您的项目中发挥作用的故事,让我了解如何使用它。是的。它是系统分析和设计的国际标准方法。当从最初的分析阶段进入项目生命周期时,UML提供了一个很好的路线图,说明了应该去哪里以及如何达到那里。一些好处: 它以客户/客户/管理层能够理解的方式显示需求 您可以迭代模型,而不会忘记模型之前的位置 准确

在过去的几年中,我看到UML提到了几个地方,但到目前为止,还没有一个令人信服的理由在工作中使用它。花时间和精力去学习它有什么价值吗?(我是RubyonRails开发人员。)


编辑:我也在寻找有关UML如何在您的项目中发挥作用的故事,让我了解如何使用它。

是的。它是系统分析和设计的国际标准方法。当从最初的分析阶段进入项目生命周期时,UML提供了一个很好的路线图,说明了应该去哪里以及如何达到那里。一些好处:

  • 它以客户/客户/管理层能够理解的方式显示需求
  • 您可以迭代模型,而不会忘记模型之前的位置
  • 准确地显示了从A点到B点的过程
  • 这是一个标准,所以任何了解UML的人都能够解释您的图表
  • 分享想法的“最快”方式,无需浏览整个代码库

不,节省时间,不要学。如果您是一名编码员,并且是一名非常细心的人,那么您可以完全忽略UML


但是,如果您与其他人一起工作,并且希望共享您的工作成果,那么UML是一种统一的语言,一种即使是非技术客户也能理解的通用语言(在一定程度上)

我认为这是两个维度的规模问题:问题的规模和团队的规模

当设计达到一定尺寸时,图表在两个方面变得有用:首先,它们帮助您思考设计问题。其次,他们帮助你与其他人交流设计

因此,如果团队是20岁或30岁,那么对总体设计的各个部分进行清晰的文档记录确实会有所帮助

就我个人而言,我可能一年使用四到五次UML,但当我需要它时,我真的需要它。最好使用一种自己设计的标准图表技术。有了好的工具,这是非常无痛的

我想说的是,我只使用UML的一小部分、类图和偶尔的协作图。

是和否

,学习基础知识。快速浏览一下etc,并大致了解一下。当有人吹嘘UML时,这将帮助您消除犹豫

,如果您的工作不需要使用UML,那么您不一定需要了解UML来编写好的应用程序。如果你需要在白板上讨论某事,只需画几个圆圈。那就行了


这只会帮助我向管理层提供文档,给他们留下一点印象。除此之外,我只发现一些有用的东西,仅此而已。

如果你把UML看作一种纯粹的图形语言,你只会考虑其中的一小部分。相反,您应该将UML视为模型驱动体系结构框架的主要语言,该框架在Eclipse中得到了很好的实现。 在Eclipse中,UML(正确地)被认为是一种独立于平台的语言,其语法由MOF(Eclipse中的ECORE)定义,语义由UML规范()定义。 在Eclipse中,OMG为模型到文本和模型到模型转换规范定义了两种主要语言,这两种语言分别是MOFM2T(Eclipse中的ACCELEO)和QVT。 Eclipse还提供了对象约束语言(OCL)的实现,QVT和MOFM2T都使用它来评估模型上的查询。 所有这些都意味着您可以以Eclipse插件的形式轻松定义自己的模型到文本和模型到模型的转换,将您的UML模型转换为您需要的任何东西。 现在我用它自动生成数千个LOC、文档和测试,并获得可观的投资回报。 然而,我知道大多数人甚至不知道UML是一种语言,但我认为它只是一个很小的图片

请查看此链接以获取一些简单的示例


这个问题可能没有一个正确答案,建议删除或编辑它并勾选“社区维基”。Re“我也在寻找关于UML如何在您的项目中发挥作用的故事,让我了解如何使用它。”StackOverflow,您最好发布到一个。好的。我把它变成了一个社区维基。即使是一个孤立的程序员也应该学习UML,除非你说的“独自一人”是指坐在一个与外部世界没有联系的房间里:-)你认为一个人不懂UML就可以成为一个好的开发人员吗?我已经编写了几年的代码,并试图成为一名程序员,试图弄清楚大师级程序员是如何思考的。我从来没有读过任何程序员说他们使用UML,但我确实在项目管理上下文中读到了很多关于它的内容。UML将在架构级别上拓宽您的理解。如果您在开始编码之前确定了关键组件及其关系,您将能够设计出高效的代码。@picardo-是的,您可以成为一名优秀的开发人员。了解UML并能够将代码映射到它(反之亦然),可以让您了解架构。我并不是说UML让你成为架构师,但它让你开始像架构师一样思考。