【发布时间】:2014-02-15 17:33:51
【问题描述】:
所以我正在构建一个相当简单的文件传输服务器/客户端,但很难找出一个好的设计来处理协议中的不同命令和状态..
假设您有 3 个不同的命令 upload、remove、download,您可以使用 3 个不同的 if 语句并使用额外的 if 语句跟踪状态,但这不会扩展并且将是 不可能维持..
责任链设计模式可用于加密和压缩等顺序内容,但它不会处理命令的逻辑。
我知道这是一个相当广泛的问题,但有人有什么建议吗?
【问题讨论】:
-
您始终可以使用
Map<String, Command>,其中键是命令名称,值是用于执行这些命令的接口的实现。这是众多解决方案中的一种
标签: java design-patterns networking protocols