协议和接口之间的一般区别是什么?

时间:2020-10-06 01:38:55

标签: interface protocols network-protocols

我了解界面是一组公开暴露的东西,一个系统可以用来与其他系统进行交互。我正在阅读有关WEBRTC协议的内容,并了解什么是协议,我去了Wikipedia definition。它或多或少地说一个协议是一个规则系统,它允许两个系统进行通信。界面不是一样的吗?也许我不了解其中一个或两个。

2 个答案:

答案 0 :(得分:1)

接口定义两个实体如何通信。协议定义了他们应该如何通信以及该通信意味着什么。

这是一个界面:

public interface ICommunicate
{
    string SendMessageAndGetResponse(string message);
}

那么一个协议可能是:

发送“你好”,如果您返回“嗨”,则发送“你好吗?”响应将是一个状态。如果您从初始消息中获得了除“ Hi”以外的任何内容,则系统无法正常运行,您必须发送消息“ Reboot”,然后您将获得“ Rebooted!”。如果成功,还有其他失败的原因。

答案 1 :(得分:0)

我认为在某些方面也可以使用“接口”一词(特别是API中的I),但是通常在谈论我们通过网络发送的内容时,常用的词就是协议。

当您深入研究单词的确切定义时,其含义和差异有时可能会破裂。

但是为了避免超精确的语义,API /接口的级别往往要比协议高一些。

相关问题