有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用序列图进行java编码

当我在大学时,一位讲师说有些人是如何使用序列图编码的,在我看来,这似乎是一种很好的编程方式,但问题当然出在细节上。我有几个问题

  • 这是真的发生了还是我 误解了他的话
  • 有 有人真的这么做了吗
  • 它更有效率吗
  • 缺点是什么
  • 使用Java时需要哪些工具

共 (6) 个答案

  1. # 1 楼答案

    我发现序列图不适合实际应用,因为:

    1. 当只有一个控制线程时,我可以用一个英文提纲很好地解释从一层到另一层的调用层次结构。MS Word中的大纲样式在这里很好

    2. 我的英语解释比UML图片更详细,占用的空间更少

    3. 与序列图相比,我能用英语更好地解释其他细节,如保护条件和循环

    4. 我写大纲比写UML要快

    如果你真的需要一张有这么多细节的“图片”,也许一张活动图就可以了

    另一方面,序列图对于高级概述来说是很好的

    就Java而言,我的项目团队非常喜欢Jude,因为它可以对Java 5代码库的类层次结构进行反向工程

  2. # 2 楼答案

    序列图适用于过程语言。它们对OO语言没有那么有用

  3. # 3 楼答案

    序列图将显示一个交互,通常是通过代码的单一路径。另一方面,你的代码必须定义每一条路径、每一个if-then-else和边条件等。你可以在序列图上显示所有这些内容,但它们往往过于复杂和笨拙。如果序列图对您有用,我建议您在设计阶段使用序列图来帮助可视化代码,但这可能是您应该做的

  4. # 4 楼答案

    我发现“正常”序列图几乎总是比它们的价值更痛苦(尽管我发现它们对于在LINQ中显示数据流很有用)。根据我的经验,做一个“粗略且准备就绪”的图表并解释(最好是面对面,但无论哪种方式都要有大量的文字)效果更好

    我认为最好有一个(或多个)图表来显示应用程序的某种“垂直部分”——每一层如何与另一层对话,并可能在适当的情况下显示请求/响应的过程。然而,这不需要是“单独的方法调用,并且总是100%准确”的级别——如果读者能够深入了解真正的代码,那么确保传达正确的总体印象更为重要

    说到这里,我对UML的看法大体上是一样的,所以如果你非常喜欢精确的图表,总是小心翼翼地与现实保持同步,等等,那就不要客气了:)

  5. # 5 楼答案

    我认为序列图是可视化复杂的多线程程序的最好方法之一,在线程之间传递大量消息。我在设计中不太使用它们,但有时它们是调试的最佳方式

  6. # 6 楼答案

    序列图有自己的位置。我从来没有担心过让UML图与代码更改保持同步。尽管如此,我非常喜欢使用序列图作为头脑风暴工具。您希望您的团队理解并同意基本流程和通话结构。当你还跟踪参数和实例创建时,它可以突出你理解中的漏洞。如果需要数据'x'作为参数,它可能已经是本地的,或者需要传入,“我们正在从数据库请求报告数据,它需要我们发送报告类型,我们记得将其作为传入参数,对吗

    这适用于设计的高级别传递。之后,它可以作为后来者的通用文档。他们会明白你要去哪里,当他们看到代码时,他们不会被这些变化弄糊涂