【发布时间】:2015-11-26 23:46:59
【问题描述】:
我正在尝试构建一个面向对象的包装器,它将包装 API 规范;这包括许多结构、事件和 API。 该 API 规范每年都会进行修订,并发布新规范;更新可能具有更新的结构、事件和 API。更新还将包括 对现有结构、事件和 API 的更新,API 本身不会改变,但它们将各种结构作为参数,最终会有更新
挑战
- API 规范不过是下层的 SDK, 我正在尝试构建的也是一个 SDK,但将是一个对象 定向包装此 SDK。
- 要求是用户 需要对象和方法,而不需要像“C”这样的结构和 API
- 频繁的版本变化应该不会对高层产生任何影响 应用程序,并且应该与任何底层 API 无缝协作 版本
- 较旧的应用程序应该可以在较新的 API 上运行
- 较新的应用程序应该在较旧的 API 上运行
最后一个比较棘手,我的意思是新应用程序在看到旧版本的 SDK 时应该以某种方式将自己转换为旧版本的 API
是否有任何设计模式可以帮助我完成这项任务,并与内部数据的频繁更改联系起来,同时实现向后兼容和向前兼容?
操作系统:Windows 开发环境:Visual C++
【问题讨论】:
标签: oop design-patterns architecture