一、定义
SDK:软件开发工具包(外语首字母缩写:SDK、外语全称:SoftwareDevelopmentKit)一般都是一些软件工程师为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合,又称api。
我常在想什么样的SDK才是一个好的SDK呢?
_框架独立性
_可扩展性
_可复用性
_可测试
_UI独立性
_代码清晰简洁
_清晰可用的文档
_清晰可用的示例代码
_一个调用完整的Demo
我想一个SDK 应具备以上9个基本的设计原则。
二、设计
为了达到上述的设计原则,初步构思后:
2-1 框架独立性
首先想要sdk的低耦合,那么最直接的就是框架的独立性。框架的独立性可以根据自身的业务进行分析拆分,这里我做了简单的拆分:
· 基础工具组件化
这里一般包括所有业务模块的公共类库,比如网络层、工具层、组件路由通信层等等。(需要特别说明组件路由通信层 本文只是为了解决有特殊需求需要两个独立组件通信的问题,具体组件化可以参照 阿里组件化、得到组件化、