请选择 进入手机版 | 继续访问电脑版

默认
发表评论 3
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
小白求教想封装brpc,加一层接口,奈何不知道怎么下手
小白求指教!
想封装brpc,加一层接口,奈何不知道怎么下手。
有大哥指点一下吗?封装第三方库需要注意点什么,是只拉取src吗,其它一些不用到的,无关要紧的,要不要全部拉取?

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

标签:求助
上一篇:新人求问,IM登录连接时认证机制该怎么设计的问题,感谢!
推荐方案
评论 3
具体的做法就是,
1.把第三方库核心的API抽象出来为一个接口(Subject)
2.定义一个真实对象类(RealSubject)实现这个接口,每个接口的实现都是对第三方库API的具体调用。
3.最后就是定义一个代理类(Proxy),该类同样实现了这个接口,并持有对真实对象的引用。

在业务层直接引用的是代理类,代理类将请求转发到真实对象。
这样做的好处就是:
1.代理作为调用者和真实对象的中间层,降低了与第三方库的耦合性
2.提供了第三方API调用的权限控制,并可以做一些额外的事情,比如日志统计等
3.容易扩展,因为对核心API都接口化了,后面第三方库做任何改动,甚至替换其他方案,只要接口不变
业务层可以不做任何修改。
以上提供的是API级别的封装思路,不知道楼主是哪一端的开发人员,如果是Android端,我还可以提供模块级别的封装思路。
要达到封装库的能力,我建议你多读一些第3方库的开源源码,经验上来了,就自然知道该怎么动手了。
写代码确实是个熟练工作,孰能生巧
签名: 天气忽然就这么冷了!
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部