I'm building an API that post a given message to different platforms (Twitter, FaceBook...).
The problem is that for each platform I may change the wrapper that allow me to post the message. For example, in C# I can post a message on twitter using the yedda API or the CsharpTwitt API, for FaceBook I'll use others APIs...
Hence, I have to be able to use different wrappers to post a message for each platform.
For now, this is the design I use, but it's clear that it will be too complicated if I add more APIs with more wrappers.
I think it's a common design issue and I'm wondering
- Am I using the best approach to have a well designed API?
- Otherwise, what is the best design for such a situation?
- What design pattern is applicable here?