我正在创建一个执行从一种形式到另一种形式的转换.
我现在面临的设计问题是编码器和解码器API是应该在一个接口中还是在单独的接口中.例如,Apache MINA使用单独的接口
我目前正在做这样的事情:
interface Convertor { A encode( B b ); B decode( A a ); }
将它们放在一个界面中的基本原理是,您可以集中实现并在一个地方修复任何协议更改.有什么想法吗?
具有单独的接口并不意味着您无法集中实现.例如,您可以让一个类实现两个接口.或者每个类可以引用实现协议的公共类.
所以我要做的就是拥有单独的接口,至少从一开始就有两个类实现.因此实现是共享的,但是用户代码将编码器和解码器视为独立且独立的概念.