一、笔记时间
2021年6月21日
二、详情
作为一个研发人员,我们时刻都在进行产品的研发。而协议是我们产品研发当中经常接触的内容,那么什么是协议?产品与协议又是什么关系?
我们先来看看百度百科对协议的定义:协议,网络协议的简称,网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。它的三要素是:语法、语义、时序。为了使数据在网络上从源到达目的,网络通信的参与方必须遵循相同的规则,这套规则称为协议(protocol),它最终体现为在网络上传输的数据包的格式。协议往往分成几个层次进行定义,分层定义是为了使某一层协议的改变不影响其他层次的协议。
这是百度百科对于协议的定义,里面已经说得很清楚了,我们简单的理解就是双方共同遵守的一套规则。只是这种规则不是我们平常见到的合同类协议,而是由一些有特定意义的数据和数据格式组成的计算机可识别的协议——软件协议。
因为我是做软件研发的,更多接触到的是软件协议,那我们就来聊聊软件协议与产品的关系吧。
软件协议是什么?怎么也逃不掉协议的本质,只是它的双方都是可执行的软件。比如说我们经常见到的HTTP,它就是一个软件协议。无论是哪一方,我们的HTTP都是由软件来进行解析和编码。
这样说可能还是比较抽象,那就类比一个与人相关的例子。就好比古代两个相恋的男女,碍于某些原因,他们不能大庭广众下明确的表达相互的爱意。但他们在通过某种方式约定了,用手帕上绣的纹路来传递情意。手帕上的这些纹路只有这对恋人可以看得懂,那么这些手帕上的纹路就是协议,而手帕就是协议传播的介质,这对恋人就是编码和解码的主体。
那我们再来理解协议与产品的关系,如果没有协议,双方的软件都只是一个独立的个体,没有任何关系。就像上例中的恋人,谁也不知道对方喜欢自己,最终可能他们都会孤独终老。
有了协议后,双方就都能传递他们想传递的信息,而且对方还知道自己要说啥。这才是软件协议的本质——有效的传递信息。就像以上那对恋人,他们通过手帕的纹路传递了相互的爱意,而且双方还都能看懂,这就相当完美了。
有了协议的沟通,双方就都不是独立的个体了,而组成了一个完整的整体。这个整体就能形成我们的产品并发挥他的价值。而这就相当于以上那对恋人结婚了,组建了家庭还有了自己的孩子。
双方融合到一起就可以形成了一个完整的产品,双方缺一不可,少一个也不能称为产品且无法产生产品的社会价值。就像我们一个家庭要有女人,要有男人,少谁都不能算一个完整的家庭,也不可能拥有孩子来延续他们的爱。
总之,协议就是要解决双方的沟通问题,而且还是有效的沟通。而有协议参与的沟通,能够让大家完美的融合到一起形成一个大家庭——这就是我们所说的产品。
以我的理解类比了一个例子来描述产品与协议的关系,这只是我初浅的理解,望大家指正!
网友评论