【发布时间】:2014-08-11 13:27:56
【问题描述】:
我正在研究一种通过 USB 或 TCP 连接与设备进行通信的通信协议。
在代码中,我有一个名为 Device 的类来表示设备。从这里我希望能够做两件事;与设备通信(请求和写入数据),以及从设备备份和恢复设置。
我正在考虑按如下方式实现组合:
Device
-BackupManager
--Backup()
--BackupAsync()
--Restore()
--RestoreAsync()
-RequestManager
--Request()
请求管理器实际上包含大约 7 个函数,它们基本上都用不同的参数做同样的事情。
我遇到的问题是,为了让我执行请求,我必须调用 Device.RequestManager.Request()。
您会建议保持这种方式,还是应该让 Device 类实现 BackupManager 和 RequestManager 的功能并将调用转发到适当的组件?
【问题讨论】:
标签: c# design-patterns composition