我正在尝试确定将访问多个不同社交网络API的应用程序的最佳设计。这是一个我还没有解决的界面,因为它感觉不太对劲。我想知道对这个问题有什么更好的设计方法......
public interface ISocialNetworkAPI<TApiEntity> where TApiEntity : SocialNetworkEntity
{
List<TApiEntity> GetAllFollowersFor(string networkUserName);
List<TApiEntity> GetAllFriendsFor(string networkUserName);
List<long> GetFollowerIdsFor(long networkUserId);
List<long> GetFollowerIdsFor(string networkUserName);
List<long> GetFriendIdsFor(string networkUser);
TApiEntity GetUser(string networkUserName);
}
我还计划使用DI容器根据调用的上下文注入适当的社交网络具体对象。
答案 0 :(得分:2)
你看过OpenSocial了吗?这是Google尝试使用标准的社交网络API。如果不是彻底使用它,也许你应该对它进行建模。
答案 1 :(得分:0)
您可以查看适配器设计模式...每个适配器都将遵循您上面的接口。 MySpaceAPIAdapter,FacebookAPIAdapter ......