interface - 如何在 UML 组件图中找出组件的正确接口(interface)?

标签 interface components uml component-diagram

我对 UML 组件图接口(interface)有疑问。我的系统中有一个搜索组件,负责从数据库中搜索某些产品并将搜索结果返回给用户。据我了解,我用 3 种不同的方式绘制了搜索组件。我想知道哪种方法是正确的、实践中最好的,以及为什么其他方法不正确。

enter image description here

在这种情况下,我认为搜索组件向其他组件(例如User)提供了搜索接口(interface),并且他们使用该搜索接口(interface)进行搜索。此外,用户还通过该接口(interface)传递搜索参数,并通过该接口(interface)获取结果。

enter image description here

在这种情况下,我认为搜索组件提供了搜索接口(interface),并且用户使用该接口(interface)来传递搜索参数。它从数据库中获取数据。然后User组件使用搜索结果接口(interface)来获取搜索结果。

enter image description here

在这种情况下,我认为搜索组件需要搜索参数来搜索某些内容。因此,它需要搜索参数。因此,我添加了搜索参数所需接口(interface)。获取数据后,搜索组件会提供该结果。因此,我添加了名为搜索结果提供接口(interface)

这些是我对这个搜索组件的思考方式。我不知道哪个是正确的。请解释哪一个是正确的以及为什么其他的不正确。

谢谢!!!

最佳答案

Lollipop 和套接字不告诉什么进出,而是告诉谁提供或需要接口(interface)定义。所以,简单来说,第一个变体是正确的。 Search 接口(interface)提供了一些search(...) 操作,可以产生一些结果。并且数据必须通过Data接口(interface)提供。该组件的任务就是根据这些接口(interface)实现数据搜索。

如果您将“接口(interface)”放置在套接字/ Lollipop 附近并相应地绘制依赖关系/实现,这将对您有所帮助。例如这样:

enter image description here

关于interface - 如何在 UML 组件图中找出组件的正确接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69263276/

相关文章:

Java 类和接口(interface)名称冲突

css - 如何扩展 Bootstrap ​​类

javascript - React.js 插入另一个组件的 ref

uml - 是否有工具可以构建实时记录的序列图?

java - UML 2.x : isLeaf vs isReadOnly

WPF HiercharchicalDataTemplate.DataType : How to react on interfaces?

java - 我如何在java中创建一个带有接受扩展接口(interface)类型参数的函数的接口(interface)?

c++ - Visio & UML - 在属性和返回值中显示指针

从 Delphi XE 调用 Delphi 7 DLL

javascript - ReactJS中已挂载组件的findDOMNode