今天收到公司的一个任务,要开发一套多平台使用的前端JS SDK,最起码支持浏览器和手机的webview,要设计优雅、修改方便,发布时需要压缩混淆。
我本人也算是个全栈JS,写过Node,也写过前端。jQuery和React也玩的很溜。但是突然接到写SDK的工作,还是有点蒙圈。需求我也明白,说白了就是获取数据,处理一下,放出接口,让其他开发者使用。但是真开始写起来,还是感觉无从下手。不知道有哪些点需要注意,一般的工作流程是什么样子的。
所以我想问一下,到底该如何去写一套JS的SDK啊? 具体而言:如何组织代码?需要用到哪些技术?有哪些业界公认的工作流程、注意事项?
如果有好的学习资料,也希望各位大神不吝赐教。 非常感谢。
先定好功能,再定名字,接着对于重复的内部还要多封装一下。 随便留一下插件接口,假如你的是有生命周期的,也添加一下生命周期钩子。其他的没啥了吧。随便找一个开一个开源 js 库参考不就行了。比如 leancloud sdk。
可以把sdk理解为一个比较复杂的npm包
☆ 来自微信小程序 cnode助手
我觉得前期SDK的设计可以多用图的形式做出来,描述出结构,各个功能接口对应的在SDK中的分布就比较清晰了。
目测你需要做的是类似于微信 JS SDK,需要统一多个渠道的JS SDK,最精简的首先是 模块 + 通信 两个部分,首先 JS 模块化可以采用 ES6 module,实现一套插件拓展机制,另外一块是 JS 与 native 通信的 API,类似于JSBridge。
和写一个npm包没太大区别吧