Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.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
Java 为什么类图不';不包括所有的课程吗?_Java_Rest_Uml_Class Diagram - Fatal编程技术网

Java 为什么类图不';不包括所有的课程吗?

Java 为什么类图不';不包括所有的课程吗?,java,rest,uml,class-diagram,Java,Rest,Uml,Class Diagram,我看到的大多数UML类图几乎都是ER图,并且缺少编程的类 如果我对基于web的应用程序感兴趣。这些类具有访问REST资源的类(我认为它们类似于边界元素),它们还包含提供服务或执行操作的类(可能是控制元素),最后是表示数据库中内容的类(我想是实体元素)。因此,我所看到的大多数UML示例都只对实体元素进行了图解。为什么呢?放置其他类是否过于详细 例如:执行这两个用户故事的应用程序 客户端从网页执行登录 已登录的客户端请求订单 我将对以下课程进行建模: 从应用程序前端接收信息的REST类 一种登录类,

我看到的大多数UML类图几乎都是ER图,并且缺少编程的类

如果我对基于web的应用程序感兴趣。这些类具有访问REST资源的类(我认为它们类似于边界元素),它们还包含提供服务或执行操作的类(可能是控制元素),最后是表示数据库中内容的类(我想是实体元素)。因此,我所看到的大多数UML示例都只对实体元素进行了图解。为什么呢?放置其他类是否过于详细

例如:执行这两个用户故事的应用程序

  • 客户端从网页执行登录
  • 已登录的客户端请求订单
  • 我将对以下课程进行建模:

  • 从应用程序前端接收信息的REST类
  • 一种登录类,它执行搜索和验证REST类接收到的信息的操作,然后使用该信息创建用户实例
  • 具有请求订单方法的用户类
  • 订单类

  • 那么,为什么所有这些类都没有在类图中建模呢?

    我想这正是你或你所在的公司所做的

    在我看来,只有“实体”类才是真正重要的,因为它们显示了应用程序的真实设计和结构。如果您必须对应用程序进行编程,那么您并不真正关心如何从外部数据库/api收集数据。但是,您需要知道实体之间的关系是如何的,否则您将根本无法处理项目


    只需使用您或您的团队可以接受的内容,并确保每个人都了解如何使用应用程序的结构。在我看来,这种情况没有真正的对与错。

    我想这只是你或你所在的公司的问题

    在我看来,只有“实体”类才是真正重要的,因为它们显示了应用程序的真实设计和结构。如果您必须对应用程序进行编程,那么您并不真正关心如何从外部数据库/api收集数据。但是,您需要知道实体之间的关系是如何的,否则您将根本无法处理项目


    只需使用您或您的团队可以接受的内容,并确保每个人都了解如何使用应用程序的结构。在我看来,在这种情况下没有真正的对与错。

    UML不是关于图表,而是关于创建模型。图表是模型的特定视图。此视图包含当前视图应高亮显示的内容。如果需要的话,把所有的东西都放进去。但是,为了获得图片,您需要将域划分为子域,并分别突出显示每个子域。

    UML不是关于图表,而是关于创建模型。图表是模型的特定视图。此视图包含当前视图应高亮显示的内容。如果需要的话,把所有的东西都放进去。但要想了解情况,您需要将领域划分为子域,并分别突出显示每个子域。

    对问题领域的分析对软件和数据库系统至关重要。如果不分析问题域,就无法理解系统需求,也无法正确实现系统。匆忙进入解决方案领域往往是失败项目的根源

    类应该是一种组织信息和相关代码片段的方式,这种方式比不断变化的技术或框架更持久。随着时间的推移,人们应该能够用新技术取代问题域类的实现,以满足非功能性需求。如果你从“休息”课程开始,你已经失去了耐用性,因为几年后休息将是另外一回事。如果你创建了一个“Login”类,你也失去了持久性。当一些近场技术使得输入密码完全不相关时会发生什么?您可能正在“记录”用户,但我打赌实现将完全错误。问题领域的变化往往比技术慢得多。例如,“贸易”领域自古以来就没有太大变化

    UML对于思考问题领域特别有用。有些人更喜欢使用它来绘制草图,但其他人已经将UML分析模型编译成代码相当长一段时间了。(更多信息,请参阅Mellor和Balcer的书,或H.s.Lahman的书。)您可能会惊讶地听到一些真正的大公司一直在将此用于任务关键型软件


    UML对分析的适用性是您倾向于看到更像ER图的UML类图的原因之一。UML和ER都是分析问题域的方法;UML可以把它做得更远。您不会看到很多设计模型的另一个原因是,大多数开发人员更愿意实现而不是设计。

    对问题域的分析对于软件和数据库系统至关重要。如果不分析问题域,就无法理解系统需求,也无法正确实现系统。匆忙进入解决方案领域往往是失败项目的根源

    类应该是一种组织信息和相关代码片段的方式,这种方式比不断变化的技术或框架更持久。随着时间的推移,人们应该能够用新技术取代问题域类的实现,以满足非功能性需求。如果你从“休息”课程开始,你已经失去了耐用性,因为几年后休息将是另外一回事。如果你创建了一个“Login”类,你也失去了持久性。当一些近场技术使得输入密码完全不相关时会发生什么?您可能正在“记录”用户,但我打赌实现将完全是wro