当前位置 : 主页 > 大数据 > 区块链 >

设计模式 – 实现协议的最佳方法是什么?

来源:互联网 收集:自由互联 发布时间:2021-06-22
假设您正在编写必须实现HTTP协议的应用程序.协议非常复杂,可能允许多个命令,具体取决于它们所处的事务的哪个阶段. 例如,看看SMTP.如果在接收“rcpt”和“mail”之前发送“data”命令
假设您正在编写必须实现HTTP协议的应用程序.协议非常复杂,可能允许多个命令,具体取决于它们所处的事务的哪个阶段.

例如,看看SMTP.如果在接收“rcpt”和“mail”之前发送“data”命令,则SMTP服务器必须抛出错误.

我的问题是:在代码中处理诸如此类协议的最佳方法是什么?有没有与此相关的设计模式?

编辑:这个问题涉及实施协议背后的理论.我知道使用库是实践中最好的方法.

国家机器

在我看来,状态机是建模和处理协议的最简单方法.通过与所接收的有效命令相关的若干转换将到达状态.然后,每个状态将仅允许某个命令子集.

状态机用于编译器构造以用于程序的词法分析.我认为协议实现的问题是一个特例.

网友评论