我想将服务描述为带有端口和接口的组件。通过描述应该清楚地知道提供了哪些功能以及如何使用它们。
据我了解,我可以使用这种表示法键入端口<name>:<type>
,其中类型可以由接口块指定?或者使用“棒棒糖”,其中接口类型由“棒棒糖”的名称指定?
现在,我想看看接口/端口使用什么应用程序或传输协议,以了解如何连接它。但我不知道这样做的最佳方法是什么。我想了两个办法。
首先:通过端口类型指定协议(此处为 TCP/IP),通过“棒棒糖”表示法指定接口(提供的信息)。
第二:指定传输/应用协议作为应用特定接口的基础接口。
我真的不知道这是否有意义,或者是否有更好的方式来描述它。请告诉我。
编辑:
根据 qwerty_so 的回答,我了解到从协议中泛化接口是错误的。但是要表示使用的协议,应该由端口类型指定吗?基于此,我对两个组件进行了另一种表示(这次是在 UML 中,我希望它不会引起任何混淆)。每个组件通过不同的端口提供相同的接口。基本上它与第一个符号相同,通过realize
从棒棒糖到接口的关系进行扩展。第一个组件使用基本协议TCP/IP
和第二个gRPC
协议以实现Interface1
.
这是表示接口及其通过特定协议实现的更准确的方式吗?
关系是否realize
必要,因为接口名称不应该清楚吗?