默认
发表评论 3
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
具体的做法就是,
1.把第三方库核心的API抽象出来为一个接口(Subject)
2.定义一个真实对象类(RealSubject)实现这个接口,每个接口的实现都是对第三方库API的具体调用。
3.最后就是定义一个代理类(Proxy),该类同样实现了这个接口,并持有对真实对象的引用。

在业务层直接引用的是代理类,代理类将请求转发到真实对象。
这样做的好处就是:
1.代理作为调用者和真实对象的中间层,降低了与第三方库的耦合性
2.提供了第三方API调用的权限控制,并可以做一些额外的事情,比如日志统计等
3.容易扩展,因为对核心API都接口化了,后面第三方库做任何改动,甚至替换其他方案,只要接口不变
业务层可以不做任何修改。
评论 3
以上提供的是API级别的封装思路,不知道楼主是哪一端的开发人员,如果是Android端,我还可以提供模块级别的封装思路。
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部