C++:重构旧库以适应不同的界面

问题描述 投票:0回答:0

我有一个旧的 udp 库,它以创建的套接字接口对象为模型(具有特定端口和 ip)。父套接字类包含常用函数,如接收、发送、设置套接字……用户可以创建额外的对象并扩展对象来做任何额外的事情,比如检查特定的头等……也许最好用编码来解释。

class udpSock{
   udpSock();
   -udpSock();

   explicit udpSock(unsigned long sendIP, int sendPort, unsigned long rcvIP, int rcvPort);
   virtual void recieve(unsigned char* buffer);
   virtual void send(unsigned char* buffer);

   // just sample attribute
   virtual void setAttribute(); 
 }

不同类型的消息将被发送到每个套接字对象(由它们的 ip 和端口决定)

现在我正在尝试将另一个库与另一个基于消息的物理传输机制集成在一起,即您将创建消息对象而不是套接字(或如上所述的类似接口的套接字)。它背后的目标(尽管很高)是用户可以在不知道底层传输机制的情况下发送消息

我正在考虑适配器模式设计。我在正确的轨道上吗?或者将旧的设计模式更改为基于消息可能更好?如果可能,可以通过指向某种类似的体系结构或代码来提供帮助吗?

谢谢

c++ oop design-patterns
© www.soinside.com 2019 - 2024. All rights reserved.