我正在构建一个将给定消息发布到不同平台(Twitter、FaceBook ......)的 API。
问题是对于每个平台,我可能会更改允许我发布消息的包装器。例如,在 C# 中,我可以使用 yedda API 或 CsharpTwitt API 在 Twitter 上发布消息,对于 FaceBook,我将使用其他 API...
因此,我必须能够使用不同的包装器为每个平台发布消息。
目前,这是我使用的设计,但很明显,如果我添加更多的 API 和更多的包装器,这将太复杂。
我认为这是一个常见的设计问题,我想知道
设计良好的 API?
最佳答案
我喜欢这种方法,因为这样你可以依赖注入(inject)你想要的任何包装器,并用一行代码改变它。
例如
Bind<Yedda>().To<ITwitter>();
Bind<FBWrapper>().To<IFacebook>();
现在整个代码
ITwitter
实际上映射到 Yedda
包装。依赖注入(inject)可能是值得一看的东西。
关于design-patterns - 在这种情况下,此 API 的最佳设计是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3605358/